1.从指定的自然数n0开始,按以下公式生成一个数列,直到ni+1为1,计算数列的长度(数列中数的个数)。
i=0,1,2,…
例如:当n0=7时生成的数列为:7,22,11,34,17,52,26,13,40,20,10,5,16,8,4,2,1。该数列的长度为17
要求:1) 编写函数 int linkrun(int a , int b , int *p),以[a,b]中所有自然数作为n0可以生成b-a+1个满足上述特性的数列,求出这些数列的长度并依次保存到p指向的数组中,函数返回p数组中的最大值。
2) 在main()中,声明变量a,b和p作为实参调用linkrun函数,输出各数列的长度和最大值。
#include<>
#define m 50
int linkrun(int a,int b,int *p);
int main()
int x[m],i,a,b,max;
scanf("%d%d",&a,&b);
max=linkrun(a,b,x);
for(i=0;i printf("%d ",x[i]);
printf("");
printf("max=%d",max);
return 0;
int linkrun(int a,int b,int *p)
int m,k=0,i,j,n0;
for(j=a;j<=b;j++)
p[k++]i;
m=p[0];
for(j=1;j if(p[j]>m)
m=p[j];
return m;
2.按要求合并两个字符串。
1)编写函数void inv(char b)其功能是先将b指向的字符串逆序存放,而void merage(char a,char b,char c)按a[0],b[0],a[1],b[1],…的顺序合并a字符串和b字符串到c指向的数组中,将a或b中剩余的字符拼接在c数组的尾部。
2)在main()函数中,声明三个一维数组s1、s2和s,接收键盘输入的两个字符串并保存到数组s1和s2中,调用inv函数对s2字符串做逆序变换,再调用merage函数合并s1字符串和s2字符串到s数组中,将合并后的数组s中的字符在屏幕上输出。
#include<>
#include<>
#define m 30
#define n 20
void inv(char x)
void merage(char a,char b,char c)
int main()
char s1[m],s2[n],s[m+n];
gets(s1);
gets(s2);
inv(s2);
merage(s1,s2,s);
puts(s);
return 0;
void inv(char b)
char ch;
int lb=strlen(x),i;
for(i=0;i
void merage(char a,char b,char c)
int i=0,j=0,k=0,la,lb;
la=strlen(a);
lb=strlen(b);
while(i
while(i c[k++]a[i++]
while(j c[k++]b[j++]
c[k]='0';
2019C语言精编100题
高。职。升。本。计算机c语言精编100题。精通学院。c语言精编100题。一 单选题。1.1 由c语言编写的 程序 a.可直接执行b.是一个源程序。c.经过编译即可执行d.经过编译解释才能执行。2 c语言源程序的扩展名为 a.objb.cc exed.cpp 2.1 按照c语言规定的用户标识符命名规则...
2019C语言考试A卷
广州大学 09 10 学年第 1 学期考试卷。物理与电子工程学院物理 电子 光电子专业班级学号姓名 一 选择题 每题2分,共48分 1 以下选项中合法的用户标识符是 b a long b 2test c 3dmax d 2 下面四个选项中,不能看作一条语句的是 d a b a 5,b 2.5,c 3...
2024年C语言
基本要求 1 采用c语言。2 采用结构化算法,设计要给出解题的算法思路,有设计流程图且正确者适。当加分。3 尽量采用函数进行功能设计,程序要有足够的注释,变量定义及函数功能说明必须齐全,尽可能优化。4 若有多种算法解决问题,要考虑算法设计的时间和空间度量,尽量采取较。优的的算法和较合适的数据结构进行...