帮忙用C语言做几个作业题,急!满意再加分。
要用C语言编写,高手帮帮忙!!能写多少就帮忙写多少吧,急着交作业,自己完成不了那么多,见笑了。1.编写下列程序,上机调试、验证。(1)输入一个字符串,将其中所有大写字母改...
要用C语言编写,高手帮帮忙!!能写多少就帮忙写多少吧,急着交作业,自己完成不了那么多,见笑了。
1.编写下列程序,上机调试、验证。
(1) 输入一个字符串,将其中所有大写字母改为小写字母,而所有小写字母全部改为大写字母,然后输出。
设计步骤
①用gets输入字符串;
②用循环判断字符串中的每个字符是大写还是小写,若是大写要转换成小写,是小写要转换成大写:大写与小写字母的转换关系是“小写字母=大写字母+32”
③用puts输出该字符串。
参考程序部分清单:
(2) 设某班50名学生的三科成绩表如下
课程一 课程二 课程三
… … …
编一个程序,输入这50个学生的三科成绩,计算并输出每科成绩的平均分。
设计步骤:
① 可先按3个学生3门课成绩设计,通过后再改成50个学生;
② 先将3个学生3门课的成绩通过scanf函数送入字符数组score;
③ 求出3个学生每门课程的总成绩,放入s一维数组中;
④ 求出每门课程的平均成绩并输出。
2.编写下列程序(或程序段)。
(1)编写自定义函数,实现求两个实数最小值的功能。
(2)计算10名学生1门课成绩的平均分。(程序设计要求:用自定义函数来实现,注意自定义函数的形式及参数之间的传递,用主函数来调用自定义函数实现功能。)
(3)定义二个整数(x、y)最小公倍数的函数。
(4)利用自定义函数编写程序,实现将一个十进制数转换成二进制数。
(5)利用自定义函数编写程序,求下面的式子:
Y=1+1/2+1/3……+1/n (n的数值自定)
Y=1×2×3+2×3×4+……+98×99×100
3.完成下面的题目,然后上机验证。
(1)输入一个数组,利用自定义函数求数组的平均数(用数组做参数)。
(2) 用自定义函数实现将两个字符串连接的程序。
(4)给出一个二维数组,求其主对角线元素之和。
(5)自定义函数countc的功能是统计 array数组中大写字母的个数,并返回大写字母的数目。
(6)下列程序的功能是计算函数f(x,y,z)=(x+y)/(x-y)+(z+y)/(z-y)的值。
(7)用递归方法计算学生的年龄,已知第一位学生年龄最小,为10岁,其余学生一个比一个大2岁,求第5位学生的年龄。
4、编写程序,然后上机调试结果
(1).已知p,q指向两个int型变量,写两个复合语句,分别交换p,q的值和p,q所指变量的值,每个复合语句中只可以定义一个变量。
(2).已知p,q指向数组的两个元素,写赋值语句,使r指向p和q的中点。例如,若p,q分别指向a[0]和a[2],则r指向a[1]。
5.根据要求完成下列题目。
(1)编写一个函数s(a,n),其中a是一个一维整型数组,n是数组长度,通过指针求数组中的平均数。
(2)利用指针编写程序,求字符串的长度。
(3)输入100个实数,利用指针求其中的最大值和平均值,
(4)输入10个数,利用指针编写将其排序的程序。 展开
1.编写下列程序,上机调试、验证。
(1) 输入一个字符串,将其中所有大写字母改为小写字母,而所有小写字母全部改为大写字母,然后输出。
设计步骤
①用gets输入字符串;
②用循环判断字符串中的每个字符是大写还是小写,若是大写要转换成小写,是小写要转换成大写:大写与小写字母的转换关系是“小写字母=大写字母+32”
③用puts输出该字符串。
参考程序部分清单:
(2) 设某班50名学生的三科成绩表如下
课程一 课程二 课程三
… … …
编一个程序,输入这50个学生的三科成绩,计算并输出每科成绩的平均分。
设计步骤:
① 可先按3个学生3门课成绩设计,通过后再改成50个学生;
② 先将3个学生3门课的成绩通过scanf函数送入字符数组score;
③ 求出3个学生每门课程的总成绩,放入s一维数组中;
④ 求出每门课程的平均成绩并输出。
2.编写下列程序(或程序段)。
(1)编写自定义函数,实现求两个实数最小值的功能。
(2)计算10名学生1门课成绩的平均分。(程序设计要求:用自定义函数来实现,注意自定义函数的形式及参数之间的传递,用主函数来调用自定义函数实现功能。)
(3)定义二个整数(x、y)最小公倍数的函数。
(4)利用自定义函数编写程序,实现将一个十进制数转换成二进制数。
(5)利用自定义函数编写程序,求下面的式子:
Y=1+1/2+1/3……+1/n (n的数值自定)
Y=1×2×3+2×3×4+……+98×99×100
3.完成下面的题目,然后上机验证。
(1)输入一个数组,利用自定义函数求数组的平均数(用数组做参数)。
(2) 用自定义函数实现将两个字符串连接的程序。
(4)给出一个二维数组,求其主对角线元素之和。
(5)自定义函数countc的功能是统计 array数组中大写字母的个数,并返回大写字母的数目。
(6)下列程序的功能是计算函数f(x,y,z)=(x+y)/(x-y)+(z+y)/(z-y)的值。
(7)用递归方法计算学生的年龄,已知第一位学生年龄最小,为10岁,其余学生一个比一个大2岁,求第5位学生的年龄。
4、编写程序,然后上机调试结果
(1).已知p,q指向两个int型变量,写两个复合语句,分别交换p,q的值和p,q所指变量的值,每个复合语句中只可以定义一个变量。
(2).已知p,q指向数组的两个元素,写赋值语句,使r指向p和q的中点。例如,若p,q分别指向a[0]和a[2],则r指向a[1]。
5.根据要求完成下列题目。
(1)编写一个函数s(a,n),其中a是一个一维整型数组,n是数组长度,通过指针求数组中的平均数。
(2)利用指针编写程序,求字符串的长度。
(3)输入100个实数,利用指针求其中的最大值和平均值,
(4)输入10个数,利用指针编写将其排序的程序。 展开
7个回答
展开全部
1.1
#include <stdio.h>
#include <string.h>
int main()
{
int i,n,len;
char str[200];
gets(str);
len=strlen(str);
for(i=0;i<len;i++)
{
if('a'<=str[i] && str[i]<='z')
str[i]-=32;
else if('A'<=str[i] && str[i]<='Z')
str[i]+=32;
}
puts(str);
return 0;
}
------------------------------------------------------------------------------------------------------------------------------------------
1.2
#include <stdio.h>
#define N 3 // 可改 50
int main()
{
int i;
int score[N][3];
int s[3]={0,0,0};
printf("输入%d个学生3门课的成绩\n",N);
for(i=0;i<N;i++)
{
printf("输入第%d个学生3门课的成绩\n",i+1);
scanf("%d %d %d",&score[i][0],&score[i][1],&score[i][2]);
s[0]+=score[i][0];
s[1]+=score[i][1];
s[2]+=score[i][2];
}
printf("%d个学生3门课程的总成绩分别是:%d\t%d\t%d\n",N,s[0],s[1],s[2]);
printf("%d个学生3门课程的平均成绩分别是:%.2f\t%.2f\t%.2f\n",N,s[0]*1.0/N,s[1]*1.0/N,s[2]
*1.0/N);
return 0;
}
------------------------------------------------------------------------------------------------------------------------------------------
2.1
#include <stdio.h>
float fmin(float a,float b)
{
if(a<b) return a;
else return b;
}
int main()
{
float f1,f2,min;
printf("请输入两个实数:\n");
scanf("%f %f",&f1,&f2);
min=fmin(f1,f2);
printf("其最小值是:%f\n",min);
return 0;
}
-----------------------------------------------------------------------------------------------------------------------------------------
2.2
#include <stdio.h>
#define N 10
float f_ave(int a[])
{
int i,sum=0;
float f;
for(i=0;i<N;i++) sum+=a[i];
f=sum*1.0/N;
return f;
}
int main()
{
int i;
int sco[N];
float ave;
printf("请输入10名学生的成绩:\n");
for(i=0;i<N;i++) scanf("%d",&sco[i]);
ave=f_ave(sco);
printf("%d名学生的平均成绩是:%.2f\n",N,ave);
return 0;
}
-------------------------------------------------------------------------------------------------------------------
2.3
#include <stdio.h>
int gcd(int a, int b)
{
int temp;
if (a < b)
{
temp=a;
a=b;
b=temp;
}
if (b == 0)
return a;
else
return gcd(b, a%b);
}
int lcm(int a, int b)
{
return a*b/gcd(a, b);
}
int main()
{
int a,b;
printf("请输入2个整数:\n");
scanf("%d %d",&a,&b);
printf("其最小公倍数为:%d\n",lcm(a,b));
return 0;
}
--------------------------------------------------------------------------------------------------------------------------------------
2.4
#include <stdio.h>
void d2b(int d)
{
int i,a,k=0;
int w[100];
a=d;
while(a>0)
{
w[k++]=a%2;
a/=2;
}
printf("%d的二进制表示为:",d);
for(i=k-1;i>=0;i--) printf("%d",w[i]);
printf("\n");
}
int main()
{
int a;
printf("请输入一个10进制数:\n");
scanf("%d",&a);
d2b(a);
return 0;
}
---------------------------------------------------------------------------------------------------------------------------------------
2.5
#include <stdio.h>
void Y_1(int n)
{
int i;
double y=0.0;
for(i=1;i<=n;i++) y+=1.0/i;
printf("Y=1+1/2+1/3……+1/%d=%.2lf\n",n,y);
}
void Y_2()
{
int i;
long sum=0;
for(i=1;i<99;i++) sum+=i*(i+1)*(i+2);
printf("Y=1×2×3+2×3×4+……+98×99×100=%ld\n",sum);
}
int main()
{
int n;
printf("请输入n值:\n");
scanf("%d",&n);
Y_1(n);
Y_2();
return 0;
}
-----------------------------------------------------------------------------------------------------------------------------------------
3.1
#include <stdio.h>
int n;
float f_ave(int a[])
{
int i,sum=0;
float ave=0.0;
for(i=0;i<n;i++) sum+=a[i];
ave=sum*1.0/n;
return ave;
}
int main()
{
int i;
int array[200];
float ave;
printf("请输入数组的大小:\n");
scanf("%d",&n);
for(i=0;i<n;i++) scanf("%d",&array[i]);
ave=f_ave(array);
printf("%d个数组元素的平均数为:%.2f\n",n,ave);
return 0;
}
3.2
#include <stdio.h>
#include <string.h>
char *str_conn(char a[],char b[])
{
int i,len,len1,len2;
char str[200];
len1=strlen(a);
len2=strlen(b);
len=len1+len2;
for(i=0;i<len1;i++) str[i]=a[i];
for(i=0;i<len2;i++) str[len1+i]=b[i];
str[len]='\0';
return str;
}
int main()
{
int i;
char str1[100],str2[100],*str;
printf("请输入第一个字符串:\n");
scanf("%s",str1);
printf("请输入第二个字符串:\n");
scanf("%s",str2);
str=str_conn(str1,str2);
printf("连接后的字符串为:%s\n",str);
return 0;
}
3.4
#include <stdio.h>
int main()
{
int i,j,n,sum,temp;
sum=0;
printf("请输入数组的阶数:\n");
scanf("%d",&n);
printf("请输入%d*%d个数组元素:\n",n,n);
for(i=0;i<n;i++)
{
for(j=0;j<n;j++)
{
scanf("%d",&temp);
if(i==j) sum+=temp;
}
}
printf("数组的主对角元素之和是:%d\n",sum);
return 0;
}
3.5
#include <stdio.h>
#include <string.h>
int countc(char s[])
{
int i,n,len;
len=strlen(s);
n=0;
for(i=0;i<len;i++)
{
if('A'<=s[i] && s[i]<='Z') n++;
}
return n;
}
int main()
{
int n;
char str[200];
printf("请输入一个字符串:\n");
gets(str);
n=countc(str);
printf("字符串中大写字母的个数是:%d\n",n);
return 0;
}
3.6
#include <stdio.h>
#include <string.h>
void f(int x,int y,int z)
{
float rst=0.0;
if(x==y && z==y)
{
printf("非法计算,分母为0!\n");
}
else
{
rst=(x+y)*1.0/(x-y)+(z+y)*1.0/(z-y);
printf("f(x,y,z)=:%.2f\n",rst);
}
}
int main()
{
int x,y,z;
printf("请输入X,Y,Z:\n");
scanf("%d %d %d",&x,&y,&z);
f(x,y,z);
return 0;
}
3.7
#include <stdio.h>
#include <string.h>
int ask_age(int n)
{
if(n==1) return 10;
else return ask_age(n-1)+2;
}
int main()
{
int n,age;
printf("请输入求第几位学生的年龄:\n");
scanf("%d",&n);
age=ask_age(n);
printf("第%d位学生的年龄为:%d\n",n,age);
return 0;
}
----------------------------------------------------------------------------------------------------------------------------
4.1
#include <stdio.h>
int main()
{
int a,b,t;
int *p,*q,*tp;
printf("请输入两个int变量:\n");
scanf("%d %d",&a,&b);
p=&a;
q=&b;
{ // 交换 p,q
tp=p;
p=q;
q=tp;
}
{ // 交换p,q所指变量
t=*p;
*p=*q;
*q=t;
}
printf("交换后两个变量是:%d %d\n",a,b);
return 0;
}
-----------------------------------------------------------------------------------------------------------------------------
4.2
#include <stdio.h>
int main()
{
int i,m,n,p1,p2;
int a[100];
printf("请输入数组的大小:\n");
scanf("%d",&n);
printf("输入%d个数组元素:\n",n);
for(i=0;i<n;i++) scanf("%d",&a[i]);
printf("输入p,q指向数组元素的下标:\n");
scanf("%d %d",&p1,&p2);
m=(p1+p2)/2;
printf("p和q的中点r指向:a[%d],其值为%d\n",m,a[m]);
return 0;
}
-----------------------------------------------------------------------------------------------------------------------
5.1
#include <stdio.h>
void s(int a[],int n)
{
int i,sum=0;
int *p=a;
float ave;
for(i=0;i<n;i++)
{
sum+=*p;
p++;
}
ave=sum*1.0/n;
printf("数组的平均数是:%.2f\n",ave);
}
int main()
{
int i,n;
int a[100];
printf("请输入数组的大小:\n");
scanf("%d",&n);
printf("输入%d个数组元素:\n",n);
for(i=0;i<n;i++) scanf("%d",&a[i]);
s(a,n);
return 0;
}
--------------------------------------------------------------------------------------------------------
5.2
#include <stdio.h>
int main()
{
int k;
char str[200],*s;
printf("请输入一个字符串:\n");
gets(str);
s=str;
k=0;
while(*s!='\0')
{
k++;
s++;
}
printf("字符串的长度是:%d\n",k);
return 0;
}
-------------------------------------------------------------------------------------------------------------------
5.3
#include <stdio.h>
int main()
{
int i;
float a[102],*min,*max;
printf("请输入100个实数:\n");
for(i=0;i<100;i++) scanf("%f",&a[i]);
min=a;
max=a;
for(i=1;i<100;i++)
{
if(*(a+i)>*max) max=a+i;
if(*(a+i)<*min) min=a+i;
}
printf("100个实数的最大值是:%.2f 最小值是:%.2f\n",*max,*min);
return 0;
}
---------------------------------------------------------------------------------------------------------------
5.4
#include <stdio.h>
#define n 10
void sort(int a[])
{
int i,j,tp;
int *p=a;
for(i=0;i<n-1;i++)
{
for(j=i+1;j<n;j++)
{
if(*(p+i) > *(p+j))
{
tp=*(p+i);
*(p+i)=*(p+j);
*(p+j)=tp;
}
}
}
}
int main()
{
int i;
int a[102],*min,*max;
printf("请输入%d个整数:\n",n);
for(i=0;i<n;i++) scanf("%d",&a[i]);
sort(a);
printf("排序后序列为:\n");
for(i=0;i<10;i++) printf("%d ",a[i]);
printf("\n");
return 0;
}
#include <stdio.h>
#include <string.h>
int main()
{
int i,n,len;
char str[200];
gets(str);
len=strlen(str);
for(i=0;i<len;i++)
{
if('a'<=str[i] && str[i]<='z')
str[i]-=32;
else if('A'<=str[i] && str[i]<='Z')
str[i]+=32;
}
puts(str);
return 0;
}
------------------------------------------------------------------------------------------------------------------------------------------
1.2
#include <stdio.h>
#define N 3 // 可改 50
int main()
{
int i;
int score[N][3];
int s[3]={0,0,0};
printf("输入%d个学生3门课的成绩\n",N);
for(i=0;i<N;i++)
{
printf("输入第%d个学生3门课的成绩\n",i+1);
scanf("%d %d %d",&score[i][0],&score[i][1],&score[i][2]);
s[0]+=score[i][0];
s[1]+=score[i][1];
s[2]+=score[i][2];
}
printf("%d个学生3门课程的总成绩分别是:%d\t%d\t%d\n",N,s[0],s[1],s[2]);
printf("%d个学生3门课程的平均成绩分别是:%.2f\t%.2f\t%.2f\n",N,s[0]*1.0/N,s[1]*1.0/N,s[2]
*1.0/N);
return 0;
}
------------------------------------------------------------------------------------------------------------------------------------------
2.1
#include <stdio.h>
float fmin(float a,float b)
{
if(a<b) return a;
else return b;
}
int main()
{
float f1,f2,min;
printf("请输入两个实数:\n");
scanf("%f %f",&f1,&f2);
min=fmin(f1,f2);
printf("其最小值是:%f\n",min);
return 0;
}
-----------------------------------------------------------------------------------------------------------------------------------------
2.2
#include <stdio.h>
#define N 10
float f_ave(int a[])
{
int i,sum=0;
float f;
for(i=0;i<N;i++) sum+=a[i];
f=sum*1.0/N;
return f;
}
int main()
{
int i;
int sco[N];
float ave;
printf("请输入10名学生的成绩:\n");
for(i=0;i<N;i++) scanf("%d",&sco[i]);
ave=f_ave(sco);
printf("%d名学生的平均成绩是:%.2f\n",N,ave);
return 0;
}
-------------------------------------------------------------------------------------------------------------------
2.3
#include <stdio.h>
int gcd(int a, int b)
{
int temp;
if (a < b)
{
temp=a;
a=b;
b=temp;
}
if (b == 0)
return a;
else
return gcd(b, a%b);
}
int lcm(int a, int b)
{
return a*b/gcd(a, b);
}
int main()
{
int a,b;
printf("请输入2个整数:\n");
scanf("%d %d",&a,&b);
printf("其最小公倍数为:%d\n",lcm(a,b));
return 0;
}
--------------------------------------------------------------------------------------------------------------------------------------
2.4
#include <stdio.h>
void d2b(int d)
{
int i,a,k=0;
int w[100];
a=d;
while(a>0)
{
w[k++]=a%2;
a/=2;
}
printf("%d的二进制表示为:",d);
for(i=k-1;i>=0;i--) printf("%d",w[i]);
printf("\n");
}
int main()
{
int a;
printf("请输入一个10进制数:\n");
scanf("%d",&a);
d2b(a);
return 0;
}
---------------------------------------------------------------------------------------------------------------------------------------
2.5
#include <stdio.h>
void Y_1(int n)
{
int i;
double y=0.0;
for(i=1;i<=n;i++) y+=1.0/i;
printf("Y=1+1/2+1/3……+1/%d=%.2lf\n",n,y);
}
void Y_2()
{
int i;
long sum=0;
for(i=1;i<99;i++) sum+=i*(i+1)*(i+2);
printf("Y=1×2×3+2×3×4+……+98×99×100=%ld\n",sum);
}
int main()
{
int n;
printf("请输入n值:\n");
scanf("%d",&n);
Y_1(n);
Y_2();
return 0;
}
-----------------------------------------------------------------------------------------------------------------------------------------
3.1
#include <stdio.h>
int n;
float f_ave(int a[])
{
int i,sum=0;
float ave=0.0;
for(i=0;i<n;i++) sum+=a[i];
ave=sum*1.0/n;
return ave;
}
int main()
{
int i;
int array[200];
float ave;
printf("请输入数组的大小:\n");
scanf("%d",&n);
for(i=0;i<n;i++) scanf("%d",&array[i]);
ave=f_ave(array);
printf("%d个数组元素的平均数为:%.2f\n",n,ave);
return 0;
}
3.2
#include <stdio.h>
#include <string.h>
char *str_conn(char a[],char b[])
{
int i,len,len1,len2;
char str[200];
len1=strlen(a);
len2=strlen(b);
len=len1+len2;
for(i=0;i<len1;i++) str[i]=a[i];
for(i=0;i<len2;i++) str[len1+i]=b[i];
str[len]='\0';
return str;
}
int main()
{
int i;
char str1[100],str2[100],*str;
printf("请输入第一个字符串:\n");
scanf("%s",str1);
printf("请输入第二个字符串:\n");
scanf("%s",str2);
str=str_conn(str1,str2);
printf("连接后的字符串为:%s\n",str);
return 0;
}
3.4
#include <stdio.h>
int main()
{
int i,j,n,sum,temp;
sum=0;
printf("请输入数组的阶数:\n");
scanf("%d",&n);
printf("请输入%d*%d个数组元素:\n",n,n);
for(i=0;i<n;i++)
{
for(j=0;j<n;j++)
{
scanf("%d",&temp);
if(i==j) sum+=temp;
}
}
printf("数组的主对角元素之和是:%d\n",sum);
return 0;
}
3.5
#include <stdio.h>
#include <string.h>
int countc(char s[])
{
int i,n,len;
len=strlen(s);
n=0;
for(i=0;i<len;i++)
{
if('A'<=s[i] && s[i]<='Z') n++;
}
return n;
}
int main()
{
int n;
char str[200];
printf("请输入一个字符串:\n");
gets(str);
n=countc(str);
printf("字符串中大写字母的个数是:%d\n",n);
return 0;
}
3.6
#include <stdio.h>
#include <string.h>
void f(int x,int y,int z)
{
float rst=0.0;
if(x==y && z==y)
{
printf("非法计算,分母为0!\n");
}
else
{
rst=(x+y)*1.0/(x-y)+(z+y)*1.0/(z-y);
printf("f(x,y,z)=:%.2f\n",rst);
}
}
int main()
{
int x,y,z;
printf("请输入X,Y,Z:\n");
scanf("%d %d %d",&x,&y,&z);
f(x,y,z);
return 0;
}
3.7
#include <stdio.h>
#include <string.h>
int ask_age(int n)
{
if(n==1) return 10;
else return ask_age(n-1)+2;
}
int main()
{
int n,age;
printf("请输入求第几位学生的年龄:\n");
scanf("%d",&n);
age=ask_age(n);
printf("第%d位学生的年龄为:%d\n",n,age);
return 0;
}
----------------------------------------------------------------------------------------------------------------------------
4.1
#include <stdio.h>
int main()
{
int a,b,t;
int *p,*q,*tp;
printf("请输入两个int变量:\n");
scanf("%d %d",&a,&b);
p=&a;
q=&b;
{ // 交换 p,q
tp=p;
p=q;
q=tp;
}
{ // 交换p,q所指变量
t=*p;
*p=*q;
*q=t;
}
printf("交换后两个变量是:%d %d\n",a,b);
return 0;
}
-----------------------------------------------------------------------------------------------------------------------------
4.2
#include <stdio.h>
int main()
{
int i,m,n,p1,p2;
int a[100];
printf("请输入数组的大小:\n");
scanf("%d",&n);
printf("输入%d个数组元素:\n",n);
for(i=0;i<n;i++) scanf("%d",&a[i]);
printf("输入p,q指向数组元素的下标:\n");
scanf("%d %d",&p1,&p2);
m=(p1+p2)/2;
printf("p和q的中点r指向:a[%d],其值为%d\n",m,a[m]);
return 0;
}
-----------------------------------------------------------------------------------------------------------------------
5.1
#include <stdio.h>
void s(int a[],int n)
{
int i,sum=0;
int *p=a;
float ave;
for(i=0;i<n;i++)
{
sum+=*p;
p++;
}
ave=sum*1.0/n;
printf("数组的平均数是:%.2f\n",ave);
}
int main()
{
int i,n;
int a[100];
printf("请输入数组的大小:\n");
scanf("%d",&n);
printf("输入%d个数组元素:\n",n);
for(i=0;i<n;i++) scanf("%d",&a[i]);
s(a,n);
return 0;
}
--------------------------------------------------------------------------------------------------------
5.2
#include <stdio.h>
int main()
{
int k;
char str[200],*s;
printf("请输入一个字符串:\n");
gets(str);
s=str;
k=0;
while(*s!='\0')
{
k++;
s++;
}
printf("字符串的长度是:%d\n",k);
return 0;
}
-------------------------------------------------------------------------------------------------------------------
5.3
#include <stdio.h>
int main()
{
int i;
float a[102],*min,*max;
printf("请输入100个实数:\n");
for(i=0;i<100;i++) scanf("%f",&a[i]);
min=a;
max=a;
for(i=1;i<100;i++)
{
if(*(a+i)>*max) max=a+i;
if(*(a+i)<*min) min=a+i;
}
printf("100个实数的最大值是:%.2f 最小值是:%.2f\n",*max,*min);
return 0;
}
---------------------------------------------------------------------------------------------------------------
5.4
#include <stdio.h>
#define n 10
void sort(int a[])
{
int i,j,tp;
int *p=a;
for(i=0;i<n-1;i++)
{
for(j=i+1;j<n;j++)
{
if(*(p+i) > *(p+j))
{
tp=*(p+i);
*(p+i)=*(p+j);
*(p+j)=tp;
}
}
}
}
int main()
{
int i;
int a[102],*min,*max;
printf("请输入%d个整数:\n",n);
for(i=0;i<n;i++) scanf("%d",&a[i]);
sort(a);
printf("排序后序列为:\n");
for(i=0;i<10;i++) printf("%d ",a[i]);
printf("\n");
return 0;
}
展开全部
都是些基本的题目,建议LZ看些c入门书籍
vc6.0 运行通过,如果LZ觉得还算可以的话,希望加些分,毕竟调了这么多,很费神的,前前后后花了三四个小时
1.1
#include <stdio.h>
#include <string.h>
int main()
{
int i,n,len;
char str[200];
gets(str);
len=strlen(str);
for(i=0;i<len;i++)
{
if('a'<=str[i] && str[i]<='z')
str[i]-=32;
else if('A'<=str[i] && str[i]<='Z')
str[i]+=32;
}
puts(str);
return 0;
}
------------------------------------------------------------------------------------------------------------------------------------------
1.2
#include <stdio.h>
#define N 3 // 可改 50
int main()
{
int i;
int score[N][3];
int s[3]={0,0,0};
printf("输入%d个学生3门课的成绩\n",N);
for(i=0;i<N;i++)
{
printf("输入第%d个学生3门课的成绩\n",i+1);
scanf("%d %d %d",&score[i][0],&score[i][1],&score[i][2]);
s[0]+=score[i][0];
s[1]+=score[i][1];
s[2]+=score[i][2];
}
printf("%d个学生3门课程的总成绩分别是:%d\t%d\t%d\n",N,s[0],s[1],s[2]);
printf("%d个学生3门课程的平均成绩分别是:%.2f\t%.2f\t%.2f\n",N,s[0]*1.0/N,s[1]*1.0/N,s[2]
*1.0/N);
return 0;
}
------------------------------------------------------------------------------------------------------------------------------------------
2.1
#include <stdio.h>
float fmin(float a,float b)
{
if(a<b) return a;
else return b;
}
int main()
{
float f1,f2,min;
printf("请输入两个实数:\n");
scanf("%f %f",&f1,&f2);
min=fmin(f1,f2);
printf("其最小值是:%f\n",min);
return 0;
}
-----------------------------------------------------------------------------------------------------------------------------------------
2.2
#include <stdio.h>
#define N 10
float f_ave(int a[])
{
int i,sum=0;
float f;
for(i=0;i<N;i++) sum+=a[i];
f=sum*1.0/N;
return f;
}
int main()
{
int i;
int sco[N];
float ave;
printf("请输入10名学生的成绩:\n");
for(i=0;i<N;i++) scanf("%d",&sco[i]);
ave=f_ave(sco);
printf("%d名学生的平均成绩是:%.2f\n",N,ave);
return 0;
}
-------------------------------------------------------------------------------------------------------------------
2.3
#include <stdio.h>
int gcd(int a, int b)
{
int temp;
if (a < b)
{
temp=a;
a=b;
b=temp;
}
if (b == 0)
return a;
else
return gcd(b, a%b);
}
int lcm(int a, int b)
{
return a*b/gcd(a, b);
}
int main()
{
int a,b;
printf("请输入2个整数:\n");
scanf("%d %d",&a,&b);
printf("其最小公倍数为:%d\n",lcm(a,b));
return 0;
}
--------------------------------------------------------------------------------------------------------------------------------------
2.4
#include <stdio.h>
void d2b(int d)
{
int i,a,k=0;
int w[100];
a=d;
while(a>0)
{
w[k++]=a%2;
a/=2;
}
printf("%d的二进制表示为:",d);
for(i=k-1;i>=0;i--) printf("%d",w[i]);
printf("\n");
}
int main()
{
int a;
printf("请输入一个10进制数:\n");
scanf("%d",&a);
d2b(a);
return 0;
}
---------------------------------------------------------------------------------------------------------------------------------------
2.5
#include <stdio.h>
void Y_1(int n)
{
int i;
double y=0.0;
for(i=1;i<=n;i++) y+=1.0/i;
printf("Y=1+1/2+1/3……+1/%d=%.2lf\n",n,y);
}
void Y_2()
{
int i;
long sum=0;
for(i=1;i<99;i++) sum+=i*(i+1)*(i+2);
printf("Y=1×2×3+2×3×4+……+98×99×100=%ld\n",sum);
}
int main()
{
int n;
printf("请输入n值:\n");
scanf("%d",&n);
Y_1(n);
Y_2();
return 0;
}
-----------------------------------------------------------------------------------------------------------------------------------------
3.1
#include <stdio.h>
int n;
float f_ave(int a[])
{
int i,sum=0;
float ave=0.0;
for(i=0;i<n;i++) sum+=a[i];
ave=sum*1.0/n;
return ave;
}
int main()
{
int i;
int array[200];
float ave;
printf("请输入数组的大小:\n");
scanf("%d",&n);
for(i=0;i<n;i++) scanf("%d",&array[i]);
ave=f_ave(array);
printf("%d个数组元素的平均数为:%.2f\n",n,ave);
return 0;
}
3.2
#include <stdio.h>
#include <string.h>
char *str_conn(char a[],char b[])
{
int i,len,len1,len2;
char str[200];
len1=strlen(a);
len2=strlen(b);
len=len1+len2;
for(i=0;i<len1;i++) str[i]=a[i];
for(i=0;i<len2;i++) str[len1+i]=b[i];
str[len]='\0';
return str;
}
int main()
{
int i;
char str1[100],str2[100],*str;
printf("请输入第一个字符串:\n");
scanf("%s",str1);
printf("请输入第二个字符串:\n");
scanf("%s",str2);
str=str_conn(str1,str2);
printf("连接后的字符串为:%s\n",str);
return 0;
}
3.4
#include <stdio.h>
int main()
{
int i,j,n,sum,temp;
sum=0;
printf("请输入数组的阶数:\n");
scanf("%d",&n);
printf("请输入%d*%d个数组元素:\n",n,n);
for(i=0;i<n;i++)
{
for(j=0;j<n;j++)
{
scanf("%d",&temp);
if(i==j) sum+=temp;
}
}
printf("数组的主对角元素之和是:%d\n",sum);
return 0;
}
3.5
#include <stdio.h>
#include <string.h>
int countc(char s[])
{
int i,n,len;
len=strlen(s);
n=0;
for(i=0;i<len;i++)
{
if('A'<=s[i] && s[i]<='Z') n++;
}
return n;
}
int main()
{
int n;
char str[200];
printf("请输入一个字符串:\n");
gets(str);
n=countc(str);
printf("字符串中大写字母的个数是:%d\n",n);
return 0;
}
3.6
#include <stdio.h>
#include <string.h>
void f(int x,int y,int z)
{
float rst=0.0;
if(x==y && z==y)
{
printf("非法计算,分母为0!\n");
}
else
{
rst=(x+y)*1.0/(x-y)+(z+y)*1.0/(z-y);
printf("f(x,y,z)=:%.2f\n",rst);
}
}
int main()
{
int x,y,z;
printf("请输入X,Y,Z:\n");
scanf("%d %d %d",&x,&y,&z);
f(x,y,z);
return 0;
}
3.7
#include <stdio.h>
#include <string.h>
int ask_age(int n)
{
if(n==1) return 10;
else return ask_age(n-1)+2;
}
int main()
{
int n,age;
printf("请输入求第几位学生的年龄:\n");
scanf("%d",&n);
age=ask_age(n);
printf("第%d位学生的年龄为:%d\n",n,age);
return 0;
}
----------------------------------------------------------------------------------------------------------------------------
4.1
#include <stdio.h>
int main()
{
int a,b,t;
int *p,*q,*tp;
printf("请输入两个int变量:\n");
scanf("%d %d",&a,&b);
p=&a;
q=&b;
{ // 交换 p,q
tp=p;
p=q;
q=tp;
}
{ // 交换p,q所指变量
t=*p;
*p=*q;
*q=t;
}
printf("交换后两个变量是:%d %d\n",a,b);
return 0;
}
-----------------------------------------------------------------------------------------------------------------------------
4.2
#include <stdio.h>
int main()
{
int i,m,n,p1,p2;
int a[100];
printf("请输入数组的大小:\n");
scanf("%d",&n);
printf("输入%d个数组元素:\n",n);
for(i=0;i<n;i++) scanf("%d",&a[i]);
printf("输入p,q指向数组元素的下标:\n");
scanf("%d %d",&p1,&p2);
m=(p1+p2)/2;
printf("p和q的中点r指向:a[%d],其值为%d\n",m,a[m]);
return 0;
}
-----------------------------------------------------------------------------------------------------------------------
5.1
#include <stdio.h>
void s(int a[],int n)
{
int i,sum=0;
int *p=a;
float ave;
for(i=0;i<n;i++)
{
sum+=*p;
p++;
}
ave=sum*1.0/n;
printf("数组的平均数是:%.2f\n",ave);
}
int main()
{
int i,n;
int a[100];
printf("请输入数组的大小:\n");
scanf("%d",&n);
printf("输入%d个数组元素:\n",n);
for(i=0;i<n;i++) scanf("%d",&a[i]);
s(a,n);
return 0;
}
--------------------------------------------------------------------------------------------------------
5.2
#include <stdio.h>
int main()
{
int k;
char str[200],*s;
printf("请输入一个字符串:\n");
gets(str);
s=str;
k=0;
while(*s!='\0')
{
k++;
s++;
}
printf("字符串的长度是:%d\n",k);
return 0;
}
-------------------------------------------------------------------------------------------------------------------
5.3
#include <stdio.h>
int main()
{
int i;
float a[102],*min,*max;
printf("请输入100个实数:\n");
for(i=0;i<100;i++) scanf("%f",&a[i]);
min=a;
max=a;
for(i=1;i<100;i++)
{
if(*(a+i)>*max) max=a+i;
if(*(a+i)<*min) min=a+i;
}
printf("100个实数的最大值是:%.2f 最小值是:%.2f\n",*max,*min);
return 0;
}
---------------------------------------------------------------------------------------------------------------
5.4
#include <stdio.h>
#define n 10
void sort(int a[])
{
int i,j,tp;
int *p=a;
for(i=0;i<n-1;i++)
{
for(j=i+1;j<n;j++)
{
if(*(p+i) > *(p+j))
{
tp=*(p+i);
*(p+i)=*(p+j);
*(p+j)=tp;
}
}
}
}
int main()
{
int i;
int a[102],*min,*max;
printf("请输入%d个整数:\n",n);
for(i=0;i<n;i++) scanf("%d",&a[i]);
sort(a);
printf("排序后序列为:\n");
for(i=0;i<10;i++) printf("%d ",a[i]);
printf("\n");
return 0;
}
vc6.0 运行通过,如果LZ觉得还算可以的话,希望加些分,毕竟调了这么多,很费神的,前前后后花了三四个小时
1.1
#include <stdio.h>
#include <string.h>
int main()
{
int i,n,len;
char str[200];
gets(str);
len=strlen(str);
for(i=0;i<len;i++)
{
if('a'<=str[i] && str[i]<='z')
str[i]-=32;
else if('A'<=str[i] && str[i]<='Z')
str[i]+=32;
}
puts(str);
return 0;
}
------------------------------------------------------------------------------------------------------------------------------------------
1.2
#include <stdio.h>
#define N 3 // 可改 50
int main()
{
int i;
int score[N][3];
int s[3]={0,0,0};
printf("输入%d个学生3门课的成绩\n",N);
for(i=0;i<N;i++)
{
printf("输入第%d个学生3门课的成绩\n",i+1);
scanf("%d %d %d",&score[i][0],&score[i][1],&score[i][2]);
s[0]+=score[i][0];
s[1]+=score[i][1];
s[2]+=score[i][2];
}
printf("%d个学生3门课程的总成绩分别是:%d\t%d\t%d\n",N,s[0],s[1],s[2]);
printf("%d个学生3门课程的平均成绩分别是:%.2f\t%.2f\t%.2f\n",N,s[0]*1.0/N,s[1]*1.0/N,s[2]
*1.0/N);
return 0;
}
------------------------------------------------------------------------------------------------------------------------------------------
2.1
#include <stdio.h>
float fmin(float a,float b)
{
if(a<b) return a;
else return b;
}
int main()
{
float f1,f2,min;
printf("请输入两个实数:\n");
scanf("%f %f",&f1,&f2);
min=fmin(f1,f2);
printf("其最小值是:%f\n",min);
return 0;
}
-----------------------------------------------------------------------------------------------------------------------------------------
2.2
#include <stdio.h>
#define N 10
float f_ave(int a[])
{
int i,sum=0;
float f;
for(i=0;i<N;i++) sum+=a[i];
f=sum*1.0/N;
return f;
}
int main()
{
int i;
int sco[N];
float ave;
printf("请输入10名学生的成绩:\n");
for(i=0;i<N;i++) scanf("%d",&sco[i]);
ave=f_ave(sco);
printf("%d名学生的平均成绩是:%.2f\n",N,ave);
return 0;
}
-------------------------------------------------------------------------------------------------------------------
2.3
#include <stdio.h>
int gcd(int a, int b)
{
int temp;
if (a < b)
{
temp=a;
a=b;
b=temp;
}
if (b == 0)
return a;
else
return gcd(b, a%b);
}
int lcm(int a, int b)
{
return a*b/gcd(a, b);
}
int main()
{
int a,b;
printf("请输入2个整数:\n");
scanf("%d %d",&a,&b);
printf("其最小公倍数为:%d\n",lcm(a,b));
return 0;
}
--------------------------------------------------------------------------------------------------------------------------------------
2.4
#include <stdio.h>
void d2b(int d)
{
int i,a,k=0;
int w[100];
a=d;
while(a>0)
{
w[k++]=a%2;
a/=2;
}
printf("%d的二进制表示为:",d);
for(i=k-1;i>=0;i--) printf("%d",w[i]);
printf("\n");
}
int main()
{
int a;
printf("请输入一个10进制数:\n");
scanf("%d",&a);
d2b(a);
return 0;
}
---------------------------------------------------------------------------------------------------------------------------------------
2.5
#include <stdio.h>
void Y_1(int n)
{
int i;
double y=0.0;
for(i=1;i<=n;i++) y+=1.0/i;
printf("Y=1+1/2+1/3……+1/%d=%.2lf\n",n,y);
}
void Y_2()
{
int i;
long sum=0;
for(i=1;i<99;i++) sum+=i*(i+1)*(i+2);
printf("Y=1×2×3+2×3×4+……+98×99×100=%ld\n",sum);
}
int main()
{
int n;
printf("请输入n值:\n");
scanf("%d",&n);
Y_1(n);
Y_2();
return 0;
}
-----------------------------------------------------------------------------------------------------------------------------------------
3.1
#include <stdio.h>
int n;
float f_ave(int a[])
{
int i,sum=0;
float ave=0.0;
for(i=0;i<n;i++) sum+=a[i];
ave=sum*1.0/n;
return ave;
}
int main()
{
int i;
int array[200];
float ave;
printf("请输入数组的大小:\n");
scanf("%d",&n);
for(i=0;i<n;i++) scanf("%d",&array[i]);
ave=f_ave(array);
printf("%d个数组元素的平均数为:%.2f\n",n,ave);
return 0;
}
3.2
#include <stdio.h>
#include <string.h>
char *str_conn(char a[],char b[])
{
int i,len,len1,len2;
char str[200];
len1=strlen(a);
len2=strlen(b);
len=len1+len2;
for(i=0;i<len1;i++) str[i]=a[i];
for(i=0;i<len2;i++) str[len1+i]=b[i];
str[len]='\0';
return str;
}
int main()
{
int i;
char str1[100],str2[100],*str;
printf("请输入第一个字符串:\n");
scanf("%s",str1);
printf("请输入第二个字符串:\n");
scanf("%s",str2);
str=str_conn(str1,str2);
printf("连接后的字符串为:%s\n",str);
return 0;
}
3.4
#include <stdio.h>
int main()
{
int i,j,n,sum,temp;
sum=0;
printf("请输入数组的阶数:\n");
scanf("%d",&n);
printf("请输入%d*%d个数组元素:\n",n,n);
for(i=0;i<n;i++)
{
for(j=0;j<n;j++)
{
scanf("%d",&temp);
if(i==j) sum+=temp;
}
}
printf("数组的主对角元素之和是:%d\n",sum);
return 0;
}
3.5
#include <stdio.h>
#include <string.h>
int countc(char s[])
{
int i,n,len;
len=strlen(s);
n=0;
for(i=0;i<len;i++)
{
if('A'<=s[i] && s[i]<='Z') n++;
}
return n;
}
int main()
{
int n;
char str[200];
printf("请输入一个字符串:\n");
gets(str);
n=countc(str);
printf("字符串中大写字母的个数是:%d\n",n);
return 0;
}
3.6
#include <stdio.h>
#include <string.h>
void f(int x,int y,int z)
{
float rst=0.0;
if(x==y && z==y)
{
printf("非法计算,分母为0!\n");
}
else
{
rst=(x+y)*1.0/(x-y)+(z+y)*1.0/(z-y);
printf("f(x,y,z)=:%.2f\n",rst);
}
}
int main()
{
int x,y,z;
printf("请输入X,Y,Z:\n");
scanf("%d %d %d",&x,&y,&z);
f(x,y,z);
return 0;
}
3.7
#include <stdio.h>
#include <string.h>
int ask_age(int n)
{
if(n==1) return 10;
else return ask_age(n-1)+2;
}
int main()
{
int n,age;
printf("请输入求第几位学生的年龄:\n");
scanf("%d",&n);
age=ask_age(n);
printf("第%d位学生的年龄为:%d\n",n,age);
return 0;
}
----------------------------------------------------------------------------------------------------------------------------
4.1
#include <stdio.h>
int main()
{
int a,b,t;
int *p,*q,*tp;
printf("请输入两个int变量:\n");
scanf("%d %d",&a,&b);
p=&a;
q=&b;
{ // 交换 p,q
tp=p;
p=q;
q=tp;
}
{ // 交换p,q所指变量
t=*p;
*p=*q;
*q=t;
}
printf("交换后两个变量是:%d %d\n",a,b);
return 0;
}
-----------------------------------------------------------------------------------------------------------------------------
4.2
#include <stdio.h>
int main()
{
int i,m,n,p1,p2;
int a[100];
printf("请输入数组的大小:\n");
scanf("%d",&n);
printf("输入%d个数组元素:\n",n);
for(i=0;i<n;i++) scanf("%d",&a[i]);
printf("输入p,q指向数组元素的下标:\n");
scanf("%d %d",&p1,&p2);
m=(p1+p2)/2;
printf("p和q的中点r指向:a[%d],其值为%d\n",m,a[m]);
return 0;
}
-----------------------------------------------------------------------------------------------------------------------
5.1
#include <stdio.h>
void s(int a[],int n)
{
int i,sum=0;
int *p=a;
float ave;
for(i=0;i<n;i++)
{
sum+=*p;
p++;
}
ave=sum*1.0/n;
printf("数组的平均数是:%.2f\n",ave);
}
int main()
{
int i,n;
int a[100];
printf("请输入数组的大小:\n");
scanf("%d",&n);
printf("输入%d个数组元素:\n",n);
for(i=0;i<n;i++) scanf("%d",&a[i]);
s(a,n);
return 0;
}
--------------------------------------------------------------------------------------------------------
5.2
#include <stdio.h>
int main()
{
int k;
char str[200],*s;
printf("请输入一个字符串:\n");
gets(str);
s=str;
k=0;
while(*s!='\0')
{
k++;
s++;
}
printf("字符串的长度是:%d\n",k);
return 0;
}
-------------------------------------------------------------------------------------------------------------------
5.3
#include <stdio.h>
int main()
{
int i;
float a[102],*min,*max;
printf("请输入100个实数:\n");
for(i=0;i<100;i++) scanf("%f",&a[i]);
min=a;
max=a;
for(i=1;i<100;i++)
{
if(*(a+i)>*max) max=a+i;
if(*(a+i)<*min) min=a+i;
}
printf("100个实数的最大值是:%.2f 最小值是:%.2f\n",*max,*min);
return 0;
}
---------------------------------------------------------------------------------------------------------------
5.4
#include <stdio.h>
#define n 10
void sort(int a[])
{
int i,j,tp;
int *p=a;
for(i=0;i<n-1;i++)
{
for(j=i+1;j<n;j++)
{
if(*(p+i) > *(p+j))
{
tp=*(p+i);
*(p+i)=*(p+j);
*(p+j)=tp;
}
}
}
}
int main()
{
int i;
int a[102],*min,*max;
printf("请输入%d个整数:\n",n);
for(i=0;i<n;i++) scanf("%d",&a[i]);
sort(a);
printf("排序后序列为:\n");
for(i=0;i<10;i++) printf("%d ",a[i]);
printf("\n");
return 0;
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
/***********************************************************
(1) 输入一个字符串,将其中所有大写字母改为小写字母,而所有小写字母全部改为大写字母,然后输出。
设计步骤
①用gets输入字符串;
②用循环判断字符串中的每个字符是大写还是小写,若是大写要转换成小写,是小写要转换成大写:大写与小写字母的转换关系是“小写字母=大写字母+32”
③用puts输出该字符串。
***********************************************************/
#include <stdio.h>
#include <string.h>
void main()
{
char *s;
int i;
gets(s);
for(i = 0; i < strlen(s); i++)
{
if( *(s+i) > 64 && *(s+i) < 91 )
*(s+i) += 32;
else if( *(s+i) > 96 && *(s+i) < 123 )
*(s+i) -= 32;
}
printf("\n");
puts(s);
}
/***********************************************************
(2) 设某班50名学生的三科成绩表如下
课程一 课程二 课程三
… … …
编一个程序,输入这50个学生的三科成绩,计算并输出每科成绩的平均分。
设计步骤:
① 可先按3个学生3门课成绩设计,通过后再改成50个学生;
② 先将3个学生3门课的成绩通过scanf函数送入字符数组score;
③ 求出3个学生每门课程的总成绩,放入s一维数组中;
④ 求出每门课程的平均成绩并输出。***********************************************************/
#include <stdio.h>
#define STU_NUM 3
void score_input(int (*score)[3]);
void score_process(int (*score)[3], int *, float *);
void score_output(int (*score)[3], int *, float *);
int main()
{
int score[STU_NUM][3],s[STU_NUM];
float average[3];
int i,j,k;
score_input(score); //When you are inputing the scores, you can use two Tab as the separator.
score_process(score,s,average);
score_output(score,s,average);
}
void score_input(int (*score)[3] )
{
int i,j;
printf("Please input the %d students' scores:",STU_NUM);
printf("\n Subject_NO1 Subject_NO2 Subject_NO3:\n");
for(i = 0; i < STU_NUM; i++)
{
printf("The %dth student:",i+1);
printf(" ");
for(j = 0; j < 3; j++)
{
scanf("%d",*(score+i)+j);
}
}
}
void score_process(int (*score)[3], int *s, float *average)
{
int i,j;
for(i = 0; i < STU_NUM; i++)
{
int sum = 0,j;
for(j = 0; j < 3; j++)
sum += *(*(score+i)+j);
*(s+i) = sum;
}
for(j = 0; j < 3; j++)
{
int sum = 0;
for(i = 0; i < STU_NUM; i++)
sum += *(*(score+i)+j);
printf("_______%d________\n",sum);
*(average+j) = sum * 1.0 / STU_NUM;
}
}
void score_output(int (*score)[3], int *s, float *average)
{
int j;
for(j = 0; j < 3; j++)
{
printf("The %dth subject's average score is : %.2f .\n",j+1,*(average+j));
}
}
/********************************************(1)编写自定义函数,实现求两个实数最小值的功能。
(2)计算10名学生1门课成绩的平均分。(程序设计要求:用自定义函数来实现,注意自定义函数的形式及参数之间的传递,用主函数来调用自定义函数实现功能。)
(3)定义二个整数(x、y)最小公倍数的函数。
(4)利用自定义函数编写程序,实现将一个十进制数转换成二进制数。
(5)利用自定义函数编写程序,求下面的式子:
Y=1+1/2+1/3……+1/n (n的数值自定)
Y=1×2×3+2×3×4+……+98×99×100
**********************************************************************/
#include <stdio.h>
double double_min(double x, double y)
{
return x > y ? y : x;
}
double average(double *score)
{
const int n = 10;
int i;
double aver,sum = 0;
for(i = 0; i < 10; i++)
sum += *(score+i);
aver = sum/10.0;
return aver;
}
int co_mutiple(int x, int y)
{
int temp;
temp = x > y ? x : y;
while( (temp % x != 0) || (temp % y != 0) )
temp++;
return temp;
}
void Dec_to_Bin(void)
{
int x,i,a[32],e;
scanf("%d",&x);
for(i = 0; i < 32; i++)
{
a[i] = x&0x01;
x=x>>1;
}
e = 0;
printf("It is :");
for(i = 31; i >= 0; i--)
{
if( (a[i] == 0) && (e == 0) )
continue;
e = 1;
printf("%d",a[i]);
}
printf("\n");
}
double caculate_Y1(int n)
{
int i;
double sum = 0;
for(i = 1; i < n+1; i++)
sum += 1.0/i;
return sum;
}
long caculate_Y2(int n)
{
int i;
long sum = 0;
for(i = 3; i < n; i++)
sum += i*(i-1)*(i-2);
return sum;
}
void main()
{
Dec_to_Bin();
printf("%lf\n%d\n",caculate_Y1(23),caculate_Y2(100));
}
累死了,先不写了
(1) 输入一个字符串,将其中所有大写字母改为小写字母,而所有小写字母全部改为大写字母,然后输出。
设计步骤
①用gets输入字符串;
②用循环判断字符串中的每个字符是大写还是小写,若是大写要转换成小写,是小写要转换成大写:大写与小写字母的转换关系是“小写字母=大写字母+32”
③用puts输出该字符串。
***********************************************************/
#include <stdio.h>
#include <string.h>
void main()
{
char *s;
int i;
gets(s);
for(i = 0; i < strlen(s); i++)
{
if( *(s+i) > 64 && *(s+i) < 91 )
*(s+i) += 32;
else if( *(s+i) > 96 && *(s+i) < 123 )
*(s+i) -= 32;
}
printf("\n");
puts(s);
}
/***********************************************************
(2) 设某班50名学生的三科成绩表如下
课程一 课程二 课程三
… … …
编一个程序,输入这50个学生的三科成绩,计算并输出每科成绩的平均分。
设计步骤:
① 可先按3个学生3门课成绩设计,通过后再改成50个学生;
② 先将3个学生3门课的成绩通过scanf函数送入字符数组score;
③ 求出3个学生每门课程的总成绩,放入s一维数组中;
④ 求出每门课程的平均成绩并输出。***********************************************************/
#include <stdio.h>
#define STU_NUM 3
void score_input(int (*score)[3]);
void score_process(int (*score)[3], int *, float *);
void score_output(int (*score)[3], int *, float *);
int main()
{
int score[STU_NUM][3],s[STU_NUM];
float average[3];
int i,j,k;
score_input(score); //When you are inputing the scores, you can use two Tab as the separator.
score_process(score,s,average);
score_output(score,s,average);
}
void score_input(int (*score)[3] )
{
int i,j;
printf("Please input the %d students' scores:",STU_NUM);
printf("\n Subject_NO1 Subject_NO2 Subject_NO3:\n");
for(i = 0; i < STU_NUM; i++)
{
printf("The %dth student:",i+1);
printf(" ");
for(j = 0; j < 3; j++)
{
scanf("%d",*(score+i)+j);
}
}
}
void score_process(int (*score)[3], int *s, float *average)
{
int i,j;
for(i = 0; i < STU_NUM; i++)
{
int sum = 0,j;
for(j = 0; j < 3; j++)
sum += *(*(score+i)+j);
*(s+i) = sum;
}
for(j = 0; j < 3; j++)
{
int sum = 0;
for(i = 0; i < STU_NUM; i++)
sum += *(*(score+i)+j);
printf("_______%d________\n",sum);
*(average+j) = sum * 1.0 / STU_NUM;
}
}
void score_output(int (*score)[3], int *s, float *average)
{
int j;
for(j = 0; j < 3; j++)
{
printf("The %dth subject's average score is : %.2f .\n",j+1,*(average+j));
}
}
/********************************************(1)编写自定义函数,实现求两个实数最小值的功能。
(2)计算10名学生1门课成绩的平均分。(程序设计要求:用自定义函数来实现,注意自定义函数的形式及参数之间的传递,用主函数来调用自定义函数实现功能。)
(3)定义二个整数(x、y)最小公倍数的函数。
(4)利用自定义函数编写程序,实现将一个十进制数转换成二进制数。
(5)利用自定义函数编写程序,求下面的式子:
Y=1+1/2+1/3……+1/n (n的数值自定)
Y=1×2×3+2×3×4+……+98×99×100
**********************************************************************/
#include <stdio.h>
double double_min(double x, double y)
{
return x > y ? y : x;
}
double average(double *score)
{
const int n = 10;
int i;
double aver,sum = 0;
for(i = 0; i < 10; i++)
sum += *(score+i);
aver = sum/10.0;
return aver;
}
int co_mutiple(int x, int y)
{
int temp;
temp = x > y ? x : y;
while( (temp % x != 0) || (temp % y != 0) )
temp++;
return temp;
}
void Dec_to_Bin(void)
{
int x,i,a[32],e;
scanf("%d",&x);
for(i = 0; i < 32; i++)
{
a[i] = x&0x01;
x=x>>1;
}
e = 0;
printf("It is :");
for(i = 31; i >= 0; i--)
{
if( (a[i] == 0) && (e == 0) )
continue;
e = 1;
printf("%d",a[i]);
}
printf("\n");
}
double caculate_Y1(int n)
{
int i;
double sum = 0;
for(i = 1; i < n+1; i++)
sum += 1.0/i;
return sum;
}
long caculate_Y2(int n)
{
int i;
long sum = 0;
for(i = 3; i < n; i++)
sum += i*(i-1)*(i-2);
return sum;
}
void main()
{
Dec_to_Bin();
printf("%lf\n%d\n",caculate_Y1(23),caculate_Y2(100));
}
累死了,先不写了
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
楼上的哥们 你穷疯了吧
虽然没看你代码 不过光凭你这精神 楼主也要给你分
虽然没看你代码 不过光凭你这精神 楼主也要给你分
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
花一小时做这些题,不如去做些更有意义的活动呢!跑步去……
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询