C语言四道题目

一、有两个字符串,利用函数实现两个字符串的链接,两个字符串比较大小,计算两个字符串的长度,将第二个字符串复制到第一个字符串中

输入按大小排序的10个数,删除其中相同的数只剩1一个,并将结果输出

二、编写程序,求在四位数的偶数中,所有各位数字之积(且不为0)是30的倍数的数的和。

三、已知Fibonacci数列:1,1,2,3,5,8,……,它可由下面公式表述: F(1)=1 if n=1 F(2)=1 F(n)=F(n-1)+F(n-2) 试求F(45)值。

四、 若两个素数之差为2,则称这两个素数为双胞胎数。求出[200,1000]之内有多少对双5胞胎数。

一:
(1)直接分别用string.h中的strcat()字符串连接,strcmp()字符串比较,strlen()字符串长度,strcpy()字符串复制这些函数
(2)#include<stdio.h>
#include<string.h>
int main()
{
int i,num[11];
memset(num,0,sizeof(num));
for(i=0;i<10;i++)
scanf("%d",&num[i]);
num[10]=num[0]-1;
for(i=0;i<10;i++)
if(num[i]!=num[i+1])
printf("%d ",num[i]);
}
二 :#include<stdio.h>
int main()
{
int i,sum=0;
for(i=1000;i<10000;i+=2)
{
int temp=i,total=1;;
while(temp>0)
{
total*=temp%10;
temp/=10;
}
if(total%30==0&&total!=0)
sum+=i;
}
printf("%d\n",sum);
return 0;
}
三:第三题用上面几层楼的都可以,我就不写了,也很容易实现;
四:我写了个求素数的函数,标记为0的是素数,统计个数就容易了,我就不写了
#include<stdio.h>
#include<string.h>
#define MAX 10000
int num[MAX];
//将素数标记为 0,合数标记为 1
int excel()
{
int i,j;
memset(num,0,sizeof(num));
num[1]=1;
for(i=2;i<MAX;i++)
if(num[i]==0)
{
for(j=i*2;j<MAX;j+=i)
num[j]=1;
}
return 0;
}
int main()
{
int i,sum=0;
excel();
return 0;
}
温馨提示:内容为网友见解,仅供参考
第1个回答  2012-05-17
//Fibonacci数列 C++(输入输出用C些即可,)
long fun(int a) //Fibonacci数列函数
{
if (a==1 || a=2)
return 1;
else
return fun(a-1)+fun(a-2);
}
int main()
{
int num,result=0;
cin>>num;
for (int i=1; i<=num; i++)
{
result+=fun(i);
}
cout<<" The result is "<<result;
}
第2个回答  2012-05-17
一楼的可以,但是你想那个递归调用的代价太大了,比如你可以计算fun(3)被算了几次,结果是很恐怖的,这儿来个迭代法的
long fibonacci(int n)
{
long previous, next, result;
next = result = 1;
while(n > 2)
{
n--;
previous = next;
next = result;
result = next + previous;
}
return result;
}本回答被网友采纳

c语言的四道题目,明天补考...
scanf("%d",n);sum=2;for(i=1;i<n;i++){ sum=sum+3 } printf("%d\\n",sum);} 2.main(){ int c;printf("***TIME***\\n");printf("1 morning\\n");printf("2 afternoon\\n");printf("3 night\\n");printf("please enter your choice:");scanf("%d",c);switch(c){ case...

四道关于C语言的问题
->2.A.C中=和==的意思不同,=是赋值,==是等于.B.一个是等,一个是不等.C.IF(A)的意思就是A不等于0时执行 ->3.除法运算符"\/"双目运算具有左结合性。参与运算量均为整型时, 结果也为整型,舍去小数。如果运算量中有一个是实型,则结果为双精度实型 ->4.题目有误,c变量是什么意思??

几道C语言的题,请大家帮帮忙帮我做一下,万分感谢。
一、填空题(每空2分,共20分)1. 结构化程序由(顺序)、(选择)、(循环)三种基本结构组成。2. 若k为int型变量并赋值11,请写出运算++k后的表达式的值(12)和变量k++的值(11).3. c语言主函数是(include),函数体由符号(main)开始,到符号(return 0)结束。4. 请写出以下程序的...

下面有一些关于C语言问题,希望大伙儿侃侃,最好解释详细,谢谢呢?_百度...
这是C语言的内存动态分配,不是很掌握,没有把握,希望其它好心人帮忙一下补齐.第七题:efgh 这道我简单说下,语言点太多,要是不明白,发消息给我,我就这题说详细.return s+strlen(s)\/2,返回的是一个指针,s指向首元素a,strlen(s)\/2=4,固返回的指针指向第五个元素e.主函数中的 printf打印从第...

几道c语言题目 菜鸟望高手解答
第一道题:输出的是:0 1 3 4 \/\/因为for循环 i从0到4 但是当i等于2的时候执行了continue,也就是直接跳转到下一次循环,所以2没有输出 第二题:t为2 因为 if-else 结构中的else是和最近一个if相匹配的,又因为if(x<y)不成立,所以直接执行输出语句,即输出2 第三题:3 6 9 因为x被...

2018年自学考试《C语言程序设计》模拟试题【四篇】
祝愿你考试一帆风顺!以下是 为大家整理的《2018年自学考试《C语言程序设计》模拟试题【四篇】》供您查阅。 【第一篇】一、选择题((1)-(40)题每小题1分,(41)-(50)题每小题2分,共60分)下列各题A)、B)、C)、D)四个选项中,只有一个选项是正确的,请将正确选项涂写在答题卡相应位置...

高人帮帮忙,做几道C语言的习题!!!
14:以下不正确的C语言标识符是(4)。15:若要利用下面的程序片段使指针变量p指向一个存储整型变量的存储单元,则[ ]中应填入的内容是(4)。16:以下可作为函数fopen中第一个参数的正确格式是(4)。17:一个c程序的执行是从(1).18:下面四个选项中,均是不正确的八进制数或十六进制数的选项是...

用c语言编写小学生四则运算!
switch(c){ case 1 : printf("very good!\\n");break;case 2 : printf("Excellent!\\n");break;case 3 :printf("Nice work!\\n");break;default :printf("keep up the good work!\\n");break;} if(cu+du>=10)\/*10题正确75%以下帮助*\/ { if(du<=(cu+du)*(75.0\/100.0))print...

计算机二级C语言考试内容有那些?
分笔试和上机考:一、笔试 选择40题,前10题为公共基础知识 (1)、填空15题,前5题为公共基础知识 (2)、只有C部分的前10题(即11~20)每题1分,其余填空选择都是2分,满分100分,时间90分钟。二、上机 填空、改错和程序设计题 (1)填空题一般有2到3个空,需要删除对应的空后,在删除的...

问几道关于C语言合法字符和数字的问题
1、D \\n是转义字符,表示换行 2、C -10不是八进制或十六进制;0开头的是八进制,数值范围是0~7,所以0abc是错的;0a12同理 3、D、0开头的是八进制,数值范围是0~7,所以0f是错的;-2.5不是1~3位的整数,所以3.9E-2.5是错的,0开头的是八进制,数值范围是0~7,所以0a是错的...

相似回答