齐齐哈尔大学C语言题库 程序改错(部分)
- 格式:doc
- 大小:99.00 KB
- 文档页数:17
c语言程序改错讲解一、程序改错共44题第1题(10.0分)题号:380 难度:中第2章/*------------------------------------------------------【程序改错】--------------------------------------------------------功能:输入两个双精度数,函数返回它们的平方和的平方根值。
例如:输入:22.936 和 14.121,输出为:y = 26.934415。
------------------------------------------------------*/#include#include#include/**********FOUND**********/double fun (double *a, *b) // double fun (double *a, double *b) {double c;/**********FOUND**********/c = sqr(a*a + b*b); // c = sqrt(a*a + b*b);/**********FOUND**********/return *c; // return c;}main ( ){double a, b, y;printf ( "Enter a, b : ");scanf ("%lf%lf", &a, &b );y = fun (&a, &b);printf ("y = %f \n", y );}第2题(10.0分)题号:438 难度:中第2章/*------------------------------------------------【程序改错】--------------------------------------------------功能:编写函数fun,求两个整数的最小公倍数,然后用主函数main()调用这个函数并输出结果,两个整数由键盘输入。
第1题【程序改错】功能:先将在字符串s中的字符按逆序存放到t串中,然后把s中的字符按正序连接到t串的后面。
例如:当s中的字符串为:“ABCDE”时,则t中的字符串应为:“EDCBAABCDE”。
------------------------------------------------------*/#include <conio.h>#include <stdio.h>#include <string.h>void fun (char *s, char *t){/**********FOUND**********/int i;sl = strlen(s);for (i=0; i<sl; i++)/**********FOUND**********/t[i] = s[sl-i];for (i=0; i<sl; i++)t[sl+i] = s[i];/**********FOUND**********/t[2*sl] = "0";}main(){char s[100], t[100];printf("\nPlease enter string s:"); scanf("%s", s);fun(s, t);printf("The result is: %s\n", t);}答案:1). int i,sl;2). t[i] = s[sl-i-1];3). t[2*sl] = '\0'; 或 t[2*sl] = 0;第2题【程序改错】功能:求出以下分数序列的前n项之和。
和值通过函数值返回main 函数。
2/1+3/2+5/3+8/5+13/8+21/13 ……例如:若n = 5,则应输出:8.391667。
------------------------------------------------------*/#include <conio.h>#include <stdio.h>/**********FOUND**********/fun ( int n ){int a, b, c, k; double s;s = 0.0; a = 2; b = 1;for ( k = 1; k <= n; k++ ){/**********FOUND**********/s = (double)a / b;c = a;a = a + b;b = c;}/**********FOUND**********/return c;}main( ){int n = 5;printf( "\nThe value of function is: %lf\n", fun ( n ) );}答案:1). double fun(int n)2). s = s + (double)a / b; 或 s += (double)a / b; 或 s += a /(double)b; 或s=s+a/(double)b;3). return s;第3题【程序改错】功能:读入一个整数m( 5≤m≤20 ),函数getarr调用函数rnd获得m个随机整数,函数sortpb将这m个随机整数从小到大排序。
c语言改错题题库及详解答案1. 题目:以下代码段中存在错误,请找出并改正。
```c#include <stdio.h>int main() {int a = 10;int b = 20;int c = a + b;printf("The sum is %d", c);return 0;}```答案:代码中缺少了字符串结束的空格。
应改为:```cprintf("The sum is %d ", c);```2. 题目:找出并改正以下代码段中的错误。
```c#include <stdio.h>int main() {int num = 100;if (num = 100)printf("Number is 100\n");return 0;}答案:代码中使用了赋值运算符 "=" 而不是比较运算符 "=="。
应改为:```cif (num == 100)```3. 题目:以下代码段中存在逻辑错误,请指出并改正。
```c#include <stdio.h>int main() {float a, b, c;scanf("%f %f", &a, &b);c = a / b;printf("The result is %f", c);return 0;}```答案:代码中没有检查除数 b 是否为 0,这会导致运行时错误。
应添加检查:```cif (b != 0) {c = a / b;printf("The result is %f", c);} else {printf("Error: Division by zero.\n");}```4. 题目:找出并改正以下代码段中的语法错误。
题号:1功能:用起泡法对10个整数从小到大排序。
/**********FOUND**********/void sort(int x,int n){ int i,j,k,t;for(i=0;i<n-1;i++)/**********FOUND**********/for(j=0;j<n-i;j++)/**********FOUND**********/if(x[i]>x[i+1]){t=x[j];x[j]=x[j+1];x[j+1]=t; }}main(){ int i,n,a[100];printf("please input the length of the array:\n");scanf("%d",&n);for(i=0;i<n;i++)scanf("%d",&a[i]);/**********FOUND**********/sort(n,a);printf("output the sorted array:\n");for(i=0;i<=n-1;i++)printf("%5d",a[i]);printf("\n");}答案:1).void sort(int *x,int n) 或void sort(int x[],int n)2).for(j=0;j<n-1-i;j++) 或for(j=0;n-1-i>j;j++) 或for(j=0;j<n-(1+i);j++) 或for(j=0;n-(1+i)>j;j++) 或for(j=0;j<=n-2-i;j++)3). if(x[j]>x[j+1]) 或if(x[j+1]<x[j])4). sort(a,n);题号:2功能:在一个已按升序排列的数组中插入一个数,插入后,数组元素仍按升序排列。
『Turbo C——程序改错』题目1:在一个一维整型数组中找出其中最大的数及其下标。
程序中共有4条错误语句,请改正错误。
--------------------------------------------------------注意:不可以增加或删除程序行,也不可以更改程序的结构。
------------------------------------------------------*/#define N 10/**********FOU ND**********/ float fun(int *a,int *b,int n){int *c,max=*a;for(c=a+1;c<a+n; c++)if(*c>max){max=*c;/**********FOU ND**********/b=c-a;} return max;}main(){inta[N],i,max,p=0; printf("please enter 10integers:\n");for(i=0;i<N;i++)/**********FOUND**********/get("%d",a[i]);/**********FOUND**********/m=fun(a,p,N);printf("max=%d,position=%d",max,p);}--------------------------------------------------『错误答案』:1 intfun(int *a,int*b,int n)2*b=c-a;}3scanf("%d",&a[i]);4max=fun(a,&p,N);『Turbo C——程序改错』--------------------------------------------------------题目2:为一维数组输入10个整数;将其中最小的数与第一个数对换,将最大的数与最后一个数对换;输出数组元素。
/*------------------------------------------------------【程序改错】--------------------------------------------------------功能:求如下表达式:1 1 1S = 1 + —— + ——— + ...... + ———————1+2 1+2+3 1+2+3+......+n ------------------------------------------------------*/#include <stdio.h>main(){int n;double fun();printf("Please input a number:");/**********FOUND**********/print("%d",n) ;printf("%10.6f\n",fun(n));}/**********FOUND**********/fun(int n){int i,j,t;double s;s=0;/**********FOUND**********/while(i=1;i<=n;i++);{t=0;for(j=1;j<=i;j++)t=t+j;/**********FOUND**********/=s+1/t;}return s;}/*------------------------------------------------------【程序改错】--------------------------------------------------------功能:判断m是否为素数,若是返回1,否则返回0。
------------------------------------------------------*/#include <stdio.h>/**********FOUND**********/void fun( int n){int i,k=1;if(m<=1) k=0;/**********FOUND**********/for(i=1;i<m;i++)/**********FOUND**********/if(m%i=0) k=0;/**********FOUND**********/return m;}void main(){int m,k=0;for(m=1;m<100;m++)if(fun(m)==1){printf("%4d",m);k++;if(k%5==0) printf("\n");}}/*------------------------------------------------------【程序改错】--------------------------------------------------------功能:用下面的和式求圆周率的近似值。
C语言机试程序改错题gc22.c程序是输入一个字符串, 将此字符串中最长的单词输出,程序在注释行附近有两个错误,请试调试改正,但调试改正中不得增删语句。
int alph(char c){if((c>='a'&&c<='z')||(c>='A'&&c<='Z'))return(1);elsereturn(0); /* find 1 */}int longest(char str) ////////////// int longest(char *str){int len=0,i,length=0,flag=1,point,place;for(i=0;i<=strlen(str);i++)if(alph(str[i]))if(flag){flag=0;point=i;}elselen++;else /* Find 2 */{flag=0; /////////////flag=1;if(len>length){ length=len;place=point;len=0; }}return(place);}main( ){int i;char line[100];printf("Enter string\n");gets(line);printf("the longest is:");for(i=longest(line);alph(line[i]);i++)printf("%c",line[i]);printf("\n");}2下列程序是建立一个包含学生有关数据的单向链表。
但该程序有2个错误,错误出现在每个注释行附近,请调试改正。
调试改正中,不得改变程序结构,也不得增删语句。
#define NULL 0struct stud{long num;char name[10];float score;struct stud *next;};/* …………… comment …………… */int n;struct stud create() ////////struct stud *create(void){struct stud *head,*p1,*p2;n=0;p1=p2=(struct stud *)malloc(sizeof(struct stud));scanf("%ld,%s,%f",&p1->num,p1->name,&p1->score);/* ……………comment …………… */head=NULL;while(p1!=0) //////////while(p1->num!=0){n=n+1;if(n==1) head=p1;else p2->next=p1;p1=(struct stud *)malloc(size(struct stud));scanf("%ld,%s,%f",&p1->num,p1->name,&p1->score);}p2->next=NULL;return(head);}gc56.c程序用于将字符串中的小写字母转换为大写字母,程序中有两处错误,请调试改正之,但不得增删语句.#include<stdio.h>void main(void){char s[255];int i;scanf("%s",s);for (i=0;s[i];i++)if(s[i]>='b' && s[i]<='z') //////s[i]>='a' && s[i]<='z's[i] = s[i] +'a' + 'A'; //////s[i] = s[i] -'a' + 'A'printf("%s",s);}gc57.c的功能是互换给定数组中的最大数和最小数。
106.【程序改错】题目:在一个一维整型数组中找出其中最大的数及其下标。
程序中共有4条错误语句,请改正错误。
#define N 10/**********FOUND**********/float fun(int *a,int *b,int n) int fun(int *a,int *b,int n){ int *c,max=*a;for(c=a+1;c<a+n;c++)if(*c>max){ max=*c;/**********FOUND**********/b=c-a;} *b=c-a;}return max; }main(){ int a[N],i,max,p=0;printf("please enter 10 integers:\n");for(i=0;i<N;i++)/**********FOUND**********/get("%d",a[i]); scanf("%d",a[i]);/**********FOUND**********/m=fun(a,p,N); max=fun(a,p,N);printf("max=%d,position=%d",max,p); }29.【程序改错】(未定)题目:fun函数的功能是:实现两个字符串的连接。
例如:输入dfdfqe和12345时,则输出dfdfqe12345.请改正程序中的错误,使它能得出正确的结果。
#include"stdio.h"main(){ char s1[80],s2[80];void scat(char s1[],char s2[]);gets(s1);gets(s2);scat(s1,s2);puts(s1); }void scat (char s1[],char s2[]){ int i=0,j=0;/**********FOUND**********/while(s1[i]= ='\0') i++; while(s1[i]!='\0')i++;/**********FOUND**********/while(s2[j]= ='\0') while(s2[i]!='\0'){/**********FOUND**********/s2[j]=s1[i]; s1[i]=s2[j];i++;j++; }/**********FOUND**********/s2[j]='\0'; s1[i]='\0';}124.【程序改错】题目:输入一行字符,分别统计出其中英文字母、空格、数字和其它字符的个数。
C语言程序改错——答案(总33页)--本页仅作为文档封面,使用时请直接删除即可----内页可以根据需求调整合适字体及大小--程序改错--------------------------------------------------------请改正程序中的错误,使它能得出正确的结果。
注意:不可以增加或删除程序行,也不可以更改程序的结构。
------------------------------------------------------*/题目1:函数fun的功能是:求出两个非零正整数的最大公约数,并作为函数值返回。
例如,若给num1和num2分别输入49 和21,则输出的最大公约数为7。
int fun(int a,int b) {int r,t;if(a<b){t=a;/**********FOUND**********/b=a;/**********FOUND**********/a=t;}r=a%b;while(r!=0){a=b;b=r;/**********FOUND**********/r=a/b;}/**********FOUND**********/return a;}int main(void){int num1,num2,a;scanf("%d%d",&num1,&num2);a=fun(num1,num2);printf("the maximum common divisor is %d\n\n",a);return 0;}答案:1). a=b;2). b=t;3). r=a%b;}4). return b; 或 return(b); 或 return(b);题目2:下列给定程序中,函数fun 的功能是:判断m是否为素数,若是返回1,否则返回0。
主函数的功能是:按每行5个输出1-100之间的全部素数。
请改正程序中的4个错误,使它能得出正确的结果。
C语言程序改错一、程序改错共 138 题(共计 1380 分)━━━━━━━━━━━━━━━━━━第 1 题(10.0 分)/*------------------------------------------------------ 功能:根据整型形参 m,计算如下公式的值:y=1+1/3+1/5+1/7+...+1/(2m-3)------------------------------------------------------*/ #include "stdio.h"double fun(int m){/**********FOUND**********/double y=1int i;/**********FOUND**********/for(i=3; i<m; i++)/**********FOUND**********/y+=1.0/(2i-3);return(y);}void main(void){int n;clrscr();printf("Enter n: ");scanf("%d", &n);printf("\nThe result is %1f\n", fun(n));getch();}答案:1). double y=1;2). for(i=3; i<=m; i++) 或 for(i=3; i<m+1;i++)3). y+=1.0/(2*i-3);第 2 题(10.0 分)/*------------------------------------------------------ 功能:用选择法对数组中的 n 个元素按从小到大的顺序进行排序。
------------------------------------------------------*/ #include <stdio.h>#define N 20void fun(int a[], int n){int i, j, t, p;for (j = 0 ;j < n-1 ;j++){/**********FOUND**********/p = jfor (i = j;i < n; i++)/**********FOUND**********/if(a[i] >a[p])/**********FOUND**********/p=j;t = a[p] ;a[p] = a[j] ;a[j] = t;}}main(){int a[N]={9,6,8,3,-1},i, m = 5; printf("排序前的数据:") ;for(i = 0;i < m;i++)printf("%d ",a[i]);printf("\n");fun(a,m);printf("排序后的数据:") ;for(i = 0;i < m;i++)printf("%d ",a[i]);printf("\n");getch();}答案:1). p = j;2). if(a[i] < a[p]) 或 if(a[p] > a[i])3). p = i;第 3 题(10.0 分)/*------------------------------------------------------ 功能:编写一个程序,从键盘接收一个字符串,然后按照字符顺序从小到大进行排序,并删除重复的字符。
改错参考答案:(3)将字符串yy在屏幕上输出#include<stdio.h>void main(){/*********Found************/ char yy[100] = "ok??\n";/*********Found************/f0r (; *yy; yy++){putchar(*yy);}}#include<stdio.h>void main(){/*********Found************/ char*yy="ok??\n";/*********Found************/for (; *yy; yy++){putchar(*yy);}}(4)计算半径为2+3的圆的面积#include<stdio.h>#define PI3."14/*********Found************/#define S(r) PI*r*rvoid main(){/*********Found************/ int mianJi;mianJi = S(2+3);printf("mian ji=%5."2f\n", mianJi);}#include<stdio.h>#define PI3."14/*********Found************/#define S(r) PI*(r)*(r)void main(){/*********Found************/1floatmianJi; mianJi = S(2+3);printf("mian ji=%5."2f\n", mianJi);}(8)打开文件d:\te.c用于读并判断打开是否成功#include<stdio.h>void main(){FILE *fp;/*********Found************/char fileName[] = "d:\te.c";/*********Found************/fp = fopen(fileName, "w");/*********Found************/if (fp == EOF){puts("File Open Error!");exit(1);}putchar(fgetc(fp));fclose(fp);}#include<stdio.h>void main(){FILE *fp;/*********Found************/char fileName[] = "d:\\te.c";/*********Found************/fp = fopen(fileName, "r");/*********Found************/if (fp ==NULL){puts("File Open Error!");exit(1);}putchar(fgetc(fp));fclose(fp);}(9)申请100个字节的内存空间,显示其首地址,然后释放申请到的内存空间#include<stdio.h>#include<alloc.h>void main(){/*********Found************/char p[100];2/*********Found************/if (p = (char *)malloc(100) == NULL){printf("malloc memory fail!\n");return ;}printf("%p\n", p);/*********Found************/fclose(p);}#include<stdio.h>#include<alloc.h>void main(){/*********Found************/ char*p;/*********Found************/if ((p = (char *)malloc(100))== NULL){printf("malloc memory fail!\n"); exit(1);}printf("%p\n", p);/*********Found************/free(p);}(10)将字符串p显示在屏幕上#include<stdio.h>/*********Found************/#define BEGIN/*********Found************/#define ENDvoid main(){char *p = "";const int i = 0;for (printf("\n"); p[i]; )BEGINputchar(p[i]);i++;END}#include<stdio.h>/*********Found************/#define BEGIN{/*********Found************/#define END}3void main(){char *p = "";const int i = 0;for (printf("\n"); p[i]; )BEGINputchar(p[i]);/*********Found************/p++;END}(14)调用函数swap,将a和b的值交换,最后在屏幕上显示交换后的a,b之值#include<stdio.h>/*********Found************/void swap(int x, int y){int tmp;/*********Found************/______*x = *y;/*********Found************/y = x;}void main(){int a = 3, b = 4;swap(a, b);printf("a=%d b=%d\n", a, b);}#include<stdio.h>/*********Found************/void swap(int*x, int*y){int tmp;/*********Found************/tmp = *x;*x = *y;/*********Found************/*y = tmp;}void main(){int a = 3, b = 4;/*********Found************/swap(&a,&b);printf("a=%d b=%d\n", a, b);}4(15)调用函数swap,将a和b的值交换,最后在屏幕上显示交换后的a,b之值#include<stdio.h>void swap(int *x, int *y){int *tmp, xy;/*********Found************/*tmp = x;*x = *y;/*********Found************/y = *tmp;}void main(){int a = 3, b = 4;/*********Found************/swap(*a, *b);/*********Found************/printf("a=%d b=%d\n", &a, &b);}#include<stdio.h>void swap(int *x, int *y){int *tmp, xy;/*********Found************/xy=*x;*x = *y;/*********Found************/*y =xy;}void main(){int a = 3, b = 4;/*********Found************/swap(&a,&b);/*********Found************/printf("a=%d b=%d\n",a,b);}(16)worker的信息使用结构体存储,从键盘读入其各项信息并显示#include<stdio.h>void main(){struct WKER{long ID;long int num;char name[20];5char sex;/*********Found************/} ;worker.ID = 1L;/*********Found************/scanf("%d %s %s", &worker.num, , &worker.sex);/*********Found************/printf("worker's info:num=%d name=%s sex=%s\n",worker.num, , worker.sex);}#include<stdio.h>void main(){struct WKER{long ID;long int num;char name[20];char sex;/*********Found************/}worker;worker.ID = 1L;/*********Found************/scanf("%ld %s %c", &worker.num, ,&worker.sex);/*********Found************/printf("worker's info:num=%ld name=%s sex=%c\n",worker.num, , worker.sex);}(17)函数userLogin的功能主要是统计并返回登录的用户数,用户名最长30字节#include <stdio.h>long userLogin(char *userName){/*********Found************/long userCount = 0;userCount++;/*********Found************/return ;}void main( ){/*********Found************/char *userName;int i;while(1){printf("userName:");scanf("%s", userName);i = userLogin(userName);6}}#include <stdio.h>long userLogin(char *userName){/*********Found************/ staticlong userCount = 0;userCount++;/*********Found************/returnuserCount;}void main( ){/*********Found************/ charuserName[31];int i;while(1){printf("userName:");scanf("%s", userName);i = userLogin(userName);}}(19)将inBuf中字符串拆分成一个个的单词/*单词之间的分隔符由串divChar,程序中定义为“;?!,.>/\”。
1.【程序改错】题目:在一个一维整型数组中找出其中最大的数及其下标。
程序中共有4条错误语句,请改正错误。
#define N 10/**********FOUND**********/float fun(int *a,int *b,int n) int fun(int *a,int *b,int n){ int *c,max=*a;for(c=a+1;c<a+n;c++)if(*c>max){ max=*c;/**********FOUND**********/b=c-a;} *b=c-a;}return max; }main(){ int a[N],i,max,p=0;printf("please enter 10 integers:\n");for(i=0;i<N;i++)/**********FOUND**********/get("%d",a[i]); scanf("%d",a[i]);/**********FOUND**********/m=fun(a,p,N); max=fun(a,p,N);printf("max=%d,position=%d",max,p); }29.【程序改错】题目:fun函数的功能是:实现两个字符串的连接。
例如:输入dfdfqe和12345时,则输出dfdfqe12345.请改正程序中的错误,使它能得出正确的结果。
#include"stdio.h"main(){ char s1[80],s2[80];void scat(char s1[],char s2[]);gets(s1);gets(s2);scat(s1,s2);puts(s1); }void scat (char s1[],char s2[]){ int i=0,j=0;/**********FOUND**********/while(s1[i]= ='\0') i++; while(s1[i]!='\0')i++;/**********FOUND**********/while(s2[j]= ='\0') while(s2[i]!='\0'){/**********FOUND**********/s2[j]=s1[i]; s1[i]=s2[j];i++;j++; }/**********FOUND**********/s2[j]='\0'; s1[i]='\0';}414.【程序改错】题目:输入一行字符,分别统计出其中英文字母、空格、数字和其它字符的个数。
#include "stdio.h"main(){char c;int letters=0,space=0,digit=0,others=0;printf("please input some characters\n");/**********FOUND**********/while((c=getchar())=='\n') while((c=getchar())!='\n'){/**********FOUND**********/if(c>='a'&&c<='z'&&c>='A'&&c<='Z')if(c>='a'&&c<='z'||c>='A'&&c<='Z')letters++;/**********FOUND**********/else if(c=!' ') else if(c==' ')space++;else if(c>='0'&&c<='9')digit++;elseothers++;}printf("all in all:char=%d space=%d digit=%d others=%d\n",letters,space,digit,others); }364.【程序改错】题目:给定程序MODI1.C中函数fun 的功能是:计算正整数num 的各位上的数字之积。
例如,若输入:252,则输出应该是:20。
若输入:202,则输出应该是:0。
#include <stdio.h>#include <conio.h>long fun (long num)/**********FOUND**********/{long k=1 {lon k=1;do{ k*=num%10 ;/**********FOUND**********/num\=10; num/=10;/**********FOUND**********/} while(!num) ; } while(num);return (k) ; }main( ){ long n ;clrscr() ;printf("\Please enter a number:") ; scanf("%ld",&n) ;printf("\n%ld\n",fun(n)) ;getch();}433.【程序改错】题目:编写一个函数,输入n为偶数时,调用函数求1/2+1/4+...+1/n,当输入n为奇数时,调用函数1/1+1/3+...+1/n(利用指针函数)#include "stdio.h"main(){float peven(),podd(),dcall();float sum;int n;while (1){/**********FOUND**********/ scanf("%d",n); scanf("%d",&n); if(n>1)break; }if(n%2==0){printf("Even=");sum=dcall(peven,n); }else{printf("Odd=");sum=dcall(podd,n); }printf("%f",sum);getch();}float peven(int n){float s;int i;s=0;for(i=2;i<=n;i+=2)/**********FOUND**********/ s+=1%(float)i; s+=1/(float)i; return(s); }float podd(n)int n;{float s;int i;/**********FOUND**********/ s=1; s=0;for(i=1;i<=n;i+=2)s+=1/(float)i;return(s); }float dcall(fp,n)float (*fp)();int n;{float s;s=(*fp)(n);return(s); }354.【程序改错】题目:下列程序中,函数fun的功能是:在字符串str 中找出ASCII码值最大的字符,将其放在第一个位置上,并将该字符前面的字符向后顺序移动。
例如:调用fun函数之前给字符串输入:ABCDeFGH,调用后字符串中的内容为:eABCDFGH。
#include<stdio.h>fun(char *p){ char max,*q;int i=0;max=p[i];while(p[i]!=0){ if(max<p[i]){ max=p[i];/**********FOUND**********/p=q+i; q=p+i;}i++;}/**********FOUND**********/while(q<p) while(q>p)/**********FOUND**********/{ q=*(q-1); {*q=*(q-1);q--; }p[0]=max; }main(){ char str[80];printf("Enter a string:");gets(str);printf("\nThe original string:");puts(str);fun(str);printf("\nThe string after moving:");puts(str);getch(); }410.【程序改错】题目:有1、2、3、4个数字,能组成多少个互不相同且无重复数字的三位数?都是多少?main(){int i,j,k;/**********FOUND**********/printf("\n") printf("\n");/**********FOUND**********/for(i=1;i<=5;i++) for(i=1;i<5;i++)for(j=1;j<5;j++)for (k=1;k<5;k++){/**********FOUND**********/if (i!=k||i!=j||j!=k) if(i!=k&&i!=j&&j!=k)printf("%d,%d,%d\n",i,j,k); }}6.【程序改错】题目:以下程序的功能是求如下表达式:1 1 1S = 1 + —— + ——— + ...... + ———————1+2 1+2+3 1+2+3+......+n 请改正程序中的错误,使程序能得到正确的运行结果。
#include <stdio.h>main(){ int n;float fun();printf("Please input a number:");/**********FOUND**********/print("%d",n) ; scanf("%d",&n);printf("%10.6f\n",fun(n)); }/**********FOUND**********/fun(int n) float fun(int n){ int i,j,t;float s;s=0;/**********FOUND**********/while(i=1;i<=n;i++); for(i=1;i<=n;i++){ t=0;for(j=1;j<=i;j++)t=t+j;/**********FOUND**********/s=+1/t; s+=1.0/t}return s; }26.【程序改错】题目:fun函数的功能是:找出大于m的最小素数,并将其作为函数值返回。