C语言程序设计在线测试
题目描述
定义了一个含8个元素的int数组,调用包含指针的函数分别实现输入、计算最大值,之后输出结果。请将下列程序代码补充完整,并提交。
#include <>
int main()
{
int a[8];
void input_array(int * p, int n);
int array_max(int * p, int n);
input_array(____,_____);//调用函数inout_array()输入数组各元素值
printf("%d\n",________);//调用函数array_max()计算最大值,并输出
return 0;
}
void input_array(int * p, int n)
{
//请补充代码
}
int array_max(int * p, int n)
{
//请补充代码
}
输入
输入8个整数,用空格分开输出
输出数组中的最大值
样例输入
1 2 3 5 8 7 6 4
样例输出
8
#include <>
int main()
{
int a[8];
void input_array(int * p, int n);
int array_max(int * p, int n);
input_array(a, 8);//调用函数inout_array()输入数组各元素值
printf("%d\n",array_max(a,8));//调用函数array_max()计算最大值,并输出 return 0;
}
void input_array(int * p, int n)
{
for (int i = 0; i < n; i++)
scanf("%d", &p[i]);
}
int array_max(int * p, int n)
{
int i,max;
max = 0;
for (i = 0; i < n; i++)
if (*(p + i)>max)
max = *(p + i);
return max;
}
定义了一个4行2列的int类型二维数组,调用包含指针的函数分别实现输入、计算最大值,之后输出结果。请将下列程序代码补充完整,并提交。
#include <>
int main()
{
int a[4][2];
void input_array(int * p, int n);
int array_max(int * p, int n);
input_array(____,_____);//调用函数inout_array()输入数组元素值
printf("%d\n",array_max(_______,_______));//调用函数array_max()计算最大值,并输出结果
return 0;
}
void input_array(int * p, int n)
{
//补充代码
}
{
//补充代码
}
输入
输入8个整数,用空格分开
输出
输出数组中的最大值
样例输入
样例输出
#include<>
intmain()
{
inta[4][2];
intarray_max(int*p,intn);
input_array(*a,8);
printf("%d\n",array_max(*a,8)); return0;
}
voidinput_array(int*p,intn) {
inti;
for(i=0;i scanf("%d,%d",&p[i]); } intarray_max(int*p,intn) { inti,max; max=0; for(i=0;i { if(max<*(p+i)) max=*(p+i); } returnmax; } 定义了一个4行2列的int类型二维数组,调用包含”行指针”的函数分别实现输入、计算最大值,之后输出结果。请将下列程序代码补充完整,并提交。 #include <> int main() { int a[4][2]; void input_array(int (* p)[2], int row); int array_max(int (* p)[2], int row); input_array(___,____);//调用函数inout_array()输入数组元素值 printf("%d\n",array_max(______,______));//调用函数array_max()计算最大值,并输出结果 return 0; } void input_array(int (* p)[2], int row) { //补充代码 } int array_max(int (* p)[2], int row) { //补充代码 } 输入 分4行输入,每行2个数,用空格分开 输出 输出数组中的最大值 样例输入 样例输出 #include<> intmain() { inta[4][2]; voidinput_array(int(*p)[2],introw); intarray_max(int(*p)[2],introw); input_array(a,4); printf("%d\n",array_max(a,4)); return0; } voidinput_array(int(*p)[2],introw) { inti,j; for(i=0;i { for(j=0;j<2;j++) { scanf("%d,%d\n",&p[i][j]); } } } intarray_max(int(*p)[2],introw) { inti,j,max; max=p[0][0]; for(i=0;i { for(j=0;j<2;j++) { if(max max=p[i][j]; } } returnmax; } 请利用字符指针,自编一个求字符串长度的函数:int my_strlen(char * str)。在main()中输入一个长度不超过1000的字符串(可能含空格),通过调用my_strlen()函数输出其长度,例如: 输入:I am fine 输出:9 输入 输入一个长度不超过1000的字符串(可能含空格)输出 输出字符串长度 样例输入 样例输出 #include<> int main() { char str[1000]; int my_strlen(char *str); int i; gets(str); i=my_strlen(str); printf("%d",i); return 0; } int my_strlen(char *str) { int i=0; while(*str!='\0') { i++; str++; } return i; } 请利用字符指针,自编一个实现字符串复制功能的函数:void my_strcpy(char * dest,char * src)。在main()中定义两个长度为1000的字符数组,输入源串内容(可能含空格),通过调用my_strcpy()函数,输出复制后的目标字符串内容,例如: 输入:AlphaGo wins final round in best-of-five Go games 输出:AlphaGo wins final round in best-of-five Go games 请填充所缺程序代码,实现相应功能: #include <> #include <> int main() { char str1[1000],str2[1000]; void my_strcpy(char * dest, char * src); gets(str2); my_strcpy(str1,str2); printf("%s\n",str1); return 0; } void my_strcpy(char * dest, char * src) { //补充代码 } 输入 输入源字符串 输出 输出目标字符串 样例输入 样例输出 #include <> #include <> int main() { char str1[1000],str2[1000]; void my_strcpy(char * dest, char * src); gets(str2); my_strcpy(str1,str2); printf("%s\n",str1); return 0; } void my_strcpy(char * dest, char * src) { char *str1=dest; while((* dest++=* src++)!='\0'); } 请利用字符指针,自编一个实现字符串连接功能的函数:void my_strcat(char * str1, char * str2)。在main()中定义两个长度为1000的字符数组,输入str1、str2串内容(可能含空格),通过调用my_strcat()函数,输出连接后的目标字符串str1内容(连接后的字符串长度不超过1000),例如: 输入: Premier Li: Region cooperation promotes local development 输出: Premier Li:Region cooperation promotes local development 请填充所缺程序代码,实现相应功能: #include <> #include <> int main() { char str1[1000],str2[1000]; void my_strcat(char * str1, char * str2); gets(str1); gets(str2); my_strcat(str1,str2); printf("%s\n",str1); return 0; } void my_strcat(char * str1, char * str2) { //补充所缺代码 } 输入 输入两行字符串内容 输出 输出连接后的字符串内容 样例输入 样例输出 #include <> #include <> int main() { char str1[1000],str2[1000]; void my_strcat(char * str1, char * str2); gets(str1); gets(str2); my_strcat(str1,str2); printf("%s\n",str1); return 0; } void my_strcat(char * str1, char * str2) { while(*str1!='\0') str1++; while(*str2!='\0') { *str1=*str2; str1++; str2++; } *str1='\0'; }