| 查看: 435 | 回复: 1 | ||
[求助]
C语言求助
|
|
1.写一通用函数,实现从一个一维数组中寻找一个指定的一个数,若找到,返回该数所在的下标,否则返回-1 #include int find(int s[5],int a) {int i,u; for(i=0;i<4;i++) if(a==s) {printf("number=% d",i); u=i; break;} return u; } main() {int x,s[5],j,k; for(j=0;j<5;j++) {scanf("%d",k); s[j]=k;} printf("the number want to find:\n" ;scanf("%d",&x); printf("%d",find(s[5],x)); getch(); } 运行结果:1 2 3 4 5 the number want to find:4 (无论输哪个数,在不在数组内) -1 2.写一个通用函数slength,求出一个字符串的长度,并用main函数调用slength(不能调用系统的slength函数) #include int strlen(char *s) {int i=0; while(*s!='\0') {s=s+i; i++;} return i;} main() {char *str="dent"; printf("length=%d",strlen(*str)); getch(); } 运行后求得的长度很奇怪 没有规律的值 3.写一个函数,讲4*4阶矩阵转置 #include int change(int *a[][4]) {int i,j,temp,p; for(i=0;i<2;i++) for(j=0;j<2;j++) {temp=a[j]; a[j]=a[j]; a[j]=temp;} return a[j]; main() {int m,n,a[4][4]={{1,2,3,4},{5,6,7,8},{9,10,11,12},{13,14,15,16}}; /*for(m=0;m<4;m++) for(n=0;n<4;n++) scanf("%d",&a[m][n]); */ printf("change square:\n" ;for(m=0;m<4;m++) {for(n=0;n<4;n++) printf("%d,",change(a)); printf("\n" ;}getch(); } 大家帮忙看看,都错在哪里了啊,我找不出来 |
» 猜你喜欢
基金申报
已经有5人回复
基金委咋了?2026年的指南还没有出来?
已经有7人回复
国自然申请面上模板最新2026版出了吗?
已经有17人回复
纳米粒子粒径的测量
已经有8人回复
疑惑?
已经有5人回复
计算机、0854电子信息(085401-058412)调剂
已经有5人回复
Materials Today Chemistry审稿周期
已经有5人回复
溴的反应液脱色
已经有7人回复
推荐一本书
已经有12人回复
常年博士招收(双一流,工科)
已经有4人回复

|
1.写一通用函数,实现从一个一维数组中寻找一个指定的一个数,若找到,返回该数所在的下标,否则返回-1 #include int find(int s[5],int a) {int i,u; for(i=0;i<4;i++) if(a==s) {printf("number=% d",i); u=i; break;} return u; } main() {int x,s[5],j,k; for(j=0;j<5;j++) {scanf("%d",k); s[j]=k;} printf("the number want to find:\n" ;scanf("%d",&x); printf("%d",find(s[5],x)); getch(); } 运行结果:1 2 3 4 5 the number want to find:4 (无论输哪个数,在不在数组内) -1 2.写一个通用函数slength,求出一个字符串的长度,并用main函数调用slength(不能调用系统的slength函数) #include int strlen(char *s) {int i=0; while(*s!='\0') {s=s+i; i++;} return i;} main() {char *str="dent"; printf("length=%d",strlen(*str)); getch(); } 运行后求得的长度很奇怪 没有规律的值 3.写一个函数,讲4*4阶矩阵转置 #include int change(int *a[][4]) {int i,j,temp,p; for(i=0;i<2;i++) for(j=0;j<2;j++) {temp=a[j]; a[j]=a[j]; a[j]=temp;} return a[j]; main() {int m,n,a[4][4]={{1,2,3,4},{5,6,7,8},{9,10,11,12},{13,14,15,16}}; /*for(m=0;m<4;m++) for(n=0;n<4;n++) scanf("%d",&a[m][n]); */ printf("change square:\n" ;for(m=0;m<4;m++) {for(n=0;n<4;n++) printf("%d,",change(a)); printf("\n" ;}getch(); } |

2楼2012-12-18 16:00:24











;
回复此楼