几道简单的C语言编程题目!!~~求教高手

作者&投稿:柯印 (若有异议请与网页底部的电邮联系)
C语言简单编程题目两道,求高手做一下。高分!!!!~

第1题 :

#include
#include

#define MAX 200

int main(void)
{
int a[MAX], i = 0;

srand(time(NULL)); // 时间种子, 保证真随机, 每次不会相同

while (i < MAX) {
a[i] = rand() % 10000; // 随机获得10000以下数字, 0-9999

if (a[i] < 1000) { // 不是4位数
continue; // 重新随机
}

i++;
}

FILE *fp;

if ((fp = fopen("in.dat", "wb")) == NULL) {
printf("Open failed.
");
}

//fwrite(a, sizeof(a), 1, fp); // 将数据写入文件, 字节的方式

for (i = 0; i < MAX; i++) { // 字符的方式, 看你下面的scanf, 可能你是要这种
fprintf(fp, "%d ", a[i]);
}

return 0;
}

第2题 :

void isVal(void)
{
int i, tmp, val;
int count = 0, j = 0;

for (i = 0; i < MAX; i++) { // 循环验证所有数字
count = 0; // 每次清0
tmp = a[i]; // 为了不改变a数组的值, 用tmp保存着

while (tmp > 0) { // 依次取得4个位存到val变量中
val = tmp % 10; // 个十百位位的顺序
tmp /= 10; // 每次除10, 以去掉个位数

if (val == 0 || val == 2 || val == 4
|| val == 6 || val == 8) { // 取得的数只要是这5个数中任意一个, count计数就加1
count ++;
}
}

if (count == 4) { // 如果count=4表示4个位都是0/2/4/6/8
b[j++] = a[i]; // 则复制此数字到b数组中, 同时j自增1
}
}

cnt = j; // j的值就是总共符合要求的数, 全局变量cnt赋值与j相同即可.

for (i = 0; i < cnt - 1; i++) { // 冒泡排序将b从小到大排列
for (j = 0; j < cnt - 1 - i; j++)
if (b[j] > b[j + 1]) {
tmp = b[j];
b[j] = b[j + 1];
b[j + 1] = tmp;
}
}

return;
}

18.
int main(){int i;int sum = 0;for (i = 1; i <= 10; i++){sum += (i * i);}printf("1^2+2^2+...+10^2=%d
", sum);return 0;}

//输入两个正整数m和n,求其最大公约数和最小公倍数
#include <stdio.h>

void main()
{
int p,r,n,m,temp;
printf("请输入两个正整数n,m:");
scanf("%d,%d",&n,&m);

//把大数放在n中,小数放在m中
if(n<m)
{
temp=n;
n=m;
m=temp;
}

//先将n和m的乘积保存在p中,以便求最小公倍数时用
//求n和m的最大公约数
p=n*m;

//展转相除法,求最大公约数
while(m!=0)
{
r=n%m;
n=m;
m=r;
}

printf("它们的最大公约数是%d\n",n);
//最小公倍数=两数乘积/最大公约数
printf("它们的最小公倍数是%d\n",p/n);

}
//求1-1/3+1/5-1/7+…,直到某项的绝对值小于0.0001
#include<stdio.h>
void main()
{
float a=1,s=0;
int i=2,t;
while(a<=10000.0)
{
if((i%2)==0)
{
s+=1.0/a;
a=a+2.0;
i++;
}
else
{
s-=1.0/a;
a=a+2.0;
i++;
}
}
printf("%f\n",s);
}
//一球从100m高度自由落下,每次落地后反跳回原高度的一半,再落下.求它在第10次
//落地时,共经过多少m?第10次反弹多高?

#include <stdio.h>

void main()
{
float sn=100,hn=sn/2; //初始值
int n;
for(n=2;n<=10;n++)
{
sn=sn+2*hn; //累记路径长度
hn=hn/2; //反弹高度
}

printf("第10次落地时共经过%fm.\n",sn);
printf("第10次反弹%fm.\n",hn);
}
// 给出10个儿童的体重,要求计算平均体重并打印出低
于平均体重的数值。
#include<stdio.h>
void main()
{
float a[10],p,sum=0;
int i;
printf("请输入10个人的体重:\n");
for(i=0;i<10;i++)
{
scanf("%f",&a[i]);
sum+=a[i];
}
p=sum/10.0;
printf("10个人的平均体重是%3.2f:",p);
printf("低于平均体重的是:\n");
for(i=0;i<10;i++)
{
if(a[i]<p)
{
printf("%3.2f\n",a[i]);
}
}

}
第一个有点复杂~~~加点分嘛~~~
//主函数实现从键盘输入5个学生的5门功课的成绩,sum函数实现统计出每个学生的5门功课的总成绩,sort函数实现根据5个学生的总成绩用冒泡法进行排序,再逆序存放并输出。

#include<stdio.h>

#define N 5

void main(void)
{
int sum(int (*a)[N]);
void sort(int *y);

int a[N][N],he[N]={0};
int i,j,*p;

for(i=0;i<N;i++)
{
printf("Input the %dth student's scores:",i+1);
for(j=0;j<N;j++)
{
scanf("%d",&a[i][j]);
}

}

for(i=0;i<N;i++)
{
he[i]=sum(&a[i]);
}

printf("\n");
for(i=0;i<N;i++)
{
printf("%d ",he[i]);
}
p=he;
sort(p);
}

int sum(int (*a)[N])
{
int tmpsum=0;
int i;

for(i=0;i<N;i++)
{
tmpsum+=*(*a+i);
}
return tmpsum;
}

void sort(int y[N])
{
int j,i,tmp;
for(j=0;j<N-1;j++)
{
for(i=j+1;i<N;i++)
{
if(y[j]>y[i])
{
tmp=y[j];
y[j]=y[i];
y[i]=tmp;
}
}
}
for(j=0;j<N;j++)
{
printf(" %d",y[j]);
}
printf("\n\n");
for(j=0;j<N/2;j++)
{
tmp=y[j];
y[j]=y[N-j-1];
y[N-j-1]=tmp;
}
for(j=0;j<N;j++)
{
printf(" %d",y[j]);
}
}



我拿笔算可以吗?第四题用笔算简单多了.....
编写程序的初衷就是为了让人们更简单的解决问题...

可惜要考6级了.
要不真能帮你做.

建议你一题一题的问,这样一下堆这么多道题人家懒得回答

题真多啊,不过都挻简单的,如果只写函数的话就轻松多了。。

2.公约数:1 公倍数:m × n
4.100÷2÷2÷2÷2÷2÷2÷2÷2÷2÷2

抱歉 只知道这点了


C语言编程:随机出10道100以内的整数加减法算术题。
这个其实很简单 给你个完整的,我很少写完整的代码 include <stdio.h> main(){ int i;int a[10],b[10],c[10],d[10],e[10];for(i=0;i<10;i++) \/\/生成题目 { while(1){ a[i]=rand()%100+1; \/\/产生ab随机数 b[i]=rand()%100+1;c[i]=rand()%4+1; \/\/产生...

C语言编程题~3道,高分求解~~先到先得
include "iostream.h"struct student { private:int num;char *name;int math,english,Cworlds,all;public:void set_info(int Num,char *Name);void set_chengji(int Math,int English,int C);int allscore();void display();};void student::set_info(int Num,char *Name){ num=Num;name=...

急求解两道不难的C语言编程题目
1 include <stdio.h> include <malloc.h> int *g_n;int g_num;void output(){ int i=1;if (g_n[0] != g_num){ printf("%d = %d", g_num, g_n[0]);while(g_n[i]!=0 && i<g_num)printf(" + %d", g_n[i++]);printf("\\n");} } void decompose(int num, ...

初学者请教 两道简单的c语言编程题目
[回答]1. 用C语言自己的时间函数 difftime(time_t time1, time_t time0) \/ 86400 这样做得缺点是,这里的time_t类型,只支持到2037年 2. 自己定义函数 楼主用的方法,在实际编程里不常用,变化比较大。下面这个方法是直接计算两个日期到公元元年的天数 然后相减,这个是实际编程时的算法,经过...

几道简单的C语言编程题目!!~~求教高手
\/\/输入两个正整数m和n,求其最大公约数和最小公倍数 include <stdio.h> void main(){ int p,r,n,m,temp;printf("请输入两个正整数n,m:");scanf("%d,%d",&n,&m);\/\/把大数放在n中,小数放在m中 if(n<m){ temp=n;n=m;m=temp;} \/\/先将n和m的乘积保存在p中,以便求最小...

C语言程序:编写程序,统计特定字母的个数。要求用指针编写。谢谢!!!_百...
include "stdio.h"include "stdlib.h"int getCharCount(char *sz,char ch,int len){ int i = 0;int icount =0;for(i=0;i<len,i++){ if(*sz == ch)icount = icount +1;sz++;} return icount;} void main(){ char sz[10]={'a','b','c','a','a','d','b','a...

紧急求救:考试要用到的八道c语言的编程题 请高手帮忙给出答案,最好是...
\/\/1 编程计算1~100之间的所有素数之和。include <stdio.h> include <math.h> int search(int i);main(){ int i,num;num=0;for(i=2;i<101;i++){ if(search(i)){ num+=i;printf("%d ",i);} } } int search(int i){ int k,j;for(k=i\/2;k>1;k--){ j=i;j=j\/...

请问这道题用c语言怎么做?最好做的简单一点啊刚写c语言遇到了麻烦求大...
1.实现1直接用输入输出函数就可以完成(由于2 3 4的要求最好还是使用子函数完成)。2 实现2可以用for+子函数(冒泡排序,快速排序等都可以)完成。3 实现3可以用for+子函数(先判断字符串的长度再使用for循环判断)。4 这个没什么好说的了。最后 祝你成功!算了 具体程序也写出来了》include<...

这道c语言编程该怎么做
2、用 switch(条件){ case 用户输入的数值变量 <= 3:return 14元;break;case 用户输入的数值变量>3&用户输入的数值变量<=15:return 2.5 * 用户输入的数值变量;break;case 用户输入的数值变量 > 15:return 3.6 * 用户输入的数值变量;break;} 3、自己给他封装成函数就行。。。题目挺简单的。

麻烦大神帮忙写一下这三道c语言编程!感激!!
include <stdio.h>#include <stdlib.h>double FunA(double a,double d,int n){ int i, sum = 0; for(i = 0; i < n; i++) { sum += (a + i*d); } return sum;}int main(){ int n; double a,d; scanf("%lf%lf%d",&a,&d,&n); pri...

吉安县15366132092: C语言几道简单的题目 -
霍泡阿奇: 第一题: #include<stdio.h> int main() { int i,a=0,b=0;char s[100];scanf("%s",s);for(i=0;s[i]!='\0';i++){ if((s[i]<='Z'&&s[i]>='A')||(s[i]<='z'&&s[i]>='a')) a++;if(s[i]<='9'&&s[i]>='0') b++;}printf("字母:%d,数字:%d\n",a,b); } 第二题: #...

吉安县15366132092: 求简单的C语言编程题200行,不要游戏的,要能运行的,大一用的,拜托 -
霍泡阿奇: #include <stdio.h> int main(){ printf("#include <stdio.h>\nint main()\n{\n"); for (int i = 0; i < 196; ++i) { printf("\tprintf(\"%d: Hello world!\\n\");\n", i+1); } printf("}\n"); }这个程序可以为你生成你要的程序,符合你要求 1. 够简单 2. C语言 3. 200行 4. 不是游戏 5. 能运行

吉安县15366132092: 简单的C语言编程题,请帮忙做一下 -
霍泡阿奇: 1)#include<stdio.h> int main() { int n; scanf("%d",&n); if(n%2==1)n++;else n+=2;printf("%d\n",n); system("pause");return 0; }2) #include<stdio.h> int main() { int n,m; scanf("%d %d",&n,&m); if(n%m==0)printf("%d是%d的倍数\n",n,m);else printf("%d不是%d的倍数\n",n,m); system("pause");return 0; }

吉安县15366132092: 四道简单的c语言题,请大家帮帮忙了1、对一批货物征收税收.价格在1万元以上的货物征税5%,在5000元以上,1万元以下的货物征税3%,5000元以下的货... -
霍泡阿奇:[答案] #include "stdio.h" int main() { /**************************第一题*******************************/ int nPrice = 0; int nTax = 0; printf("请输入货物价格:"); scanf("%d",&nPrice); if (nPrice>=10000) nTax = nPrice * 0.05; else if(nPrice>=5000) nTax =...

吉安县15366132092: 菜鸟求助:一道很简单的C编程题 -
霍泡阿奇: 这样是可以的,形式是输入一个数跟着输出绝对值 EOF指的是end of file.是一个特定的标记 #include <stdio.h> main() { float a; while(scanf("%f",&a)!=EOF) //这个语句的意思就是用a来接收输入的数 //并以Ctrl+z结束整个程序 { if (a<0) a=-a; ...

吉安县15366132092: 求解一道简单的C语言C程序C编程题 -
霍泡阿奇: 题目没说清.1.输入仅限于小写字母还是所有字符;2 y,z输出a,b还是也按ASCII码向后推两位.#include <stdio.h>#include <string.h> int main() { char iword; char oword; while(iword = getchar()) { if(iword == '\n') break; oword = (iword - 95) % 26 + 97; printf("%c",oword); } printf("\n"); return 0; } 输入:abcdefxyz 输出:cdefghzab 此程序仅限输入小写字母.

吉安县15366132092: 几道很,非常简单的C语言题.
霍泡阿奇: 1、 1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 1 2、 *p1=10; *p2=10 i=10; j=20 p1=0012FF48, p2=0012FF48 3、 12,11 11,11 %p是指针输出格式符

吉安县15366132092: 几道C语言编程题 题目不难1 编写一个程序,求出100 - 1000内同时满足除以5余2,除以7余3,除11余7的所有整数的个个数. 2编写一个程序,从终端输入5... -
霍泡阿奇:[答案] 1、#include #include void main() { int i,k=0; for(i=100;i<=1000;i++) { if((i%5==2)&&(i%7==3)&&(i%11==7)) k++; } printf("共有%d\n",k); } 2、 #include #include void main() { char data[5]; char *ch; scanf("%s",...

吉安县15366132092: C语言的几道简单小题
霍泡阿奇: #include<stdio.h> void main() { double a[10],sum=0; int i; for(i=0;i<10;i++) { scanf("%lf",&a[i]); sum+=(double)1/a[i]; } printf("sum= %lf \n",sum); }#include<stdio.h> int isprim(int n) { int i,flag=0; for(i=2;i<n/2;i++) if(n%i==0) flag=1; if(flag==1) ...

吉安县15366132092: 几道C语言题目!请用比较简单的方法做出来!谢谢!急需!1、 从键盘输入一个三位数,输出其各位数字之和,如输入“985”,输出“9+8+5=22”;2、 编... -
霍泡阿奇:[答案] 1 #include void main() {int a,b,c,d; printf("Please Iuput an integer:\n"); scanf("%d",&a); b=a/100;c=(a-b*100)/10;d=a%10; a=b+c+d; printf("%d+%d+%d=%d\n",b,c,d,a); } 2 #include void main() {int i=1,product=1; float sum=0.00; for(;i {product=...

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网