二维数组作为参数传递,完成二维数组中元素的输入输出
oid iprint(int (*p)[3],int m,int n) { for(int i=0;i<m;i++) { for(int j=0;j<n;j++) { printf("%d",*(*(p+i)+j)); } } } void iscan(int (*p)[3],int m,int n) { for(int i=0;i<m;i++) { for(int j=0;j<n;j++) { scanf("%d",*(p+i)+j); } } } int main(int argc, const char *argv[]) { int arr[2][3]; int(*p)[3]=arr; iscan(arr,2,3); iprint(arr,2,3); return 0; }
- 封装自己的strlen函数,函数原型:int my_strlen(char *s);
#include<stdio.h>
int my_strlen(char*s)
{
int len=0;
while(*s)
{
len++;
s++;
}
return len;
}
int main(int argc, const char *argv[])
{
char str[]="hello";
int n=my_strlen(str);
printf("%d\n",n);
return 0;
}
- 猴子吃桃问题,猴子第一天摘了若干个桃,当即就吃了一半数量的桃,没吃过瘾,又多吃一个,第二天,在剩下的桃里有吃了一半数量的桃,没吃过瘾,又多吃了一个,依此类推,直到第10天,想吃桃的时候,发现只剩下一个桃了,问:猴子第一天摘了多少个桃。while循环实现
#include<stdio.h>
int change(int arr[],int len)
{
int i=1; arr[len-1]=1;
while(i<len)
{
arr[len-1-i]=2*(arr[len-i]+1);
i++;
}
return arr[9];
}
int main(int argc, const char *argv[])
{
int arr[999]={0};
int n=change(arr,10);
printf("%d\n",n);
return 0;
}