求用户输入的两个数的商,程序运行时,以如下格式输入数据:
Input two integers:4 2↙
请改正程序中的错误,使它能得出正确的结果。
#include <>
main()
{
int a, b, c;
printf("Input two integers:");
scanf("%d,%d", &a, &b);
c = a\b;
、
printf("The quotient of a and b is :%d", c);
}
# include <>
int main ()
{
int a,b,c;
printf ("Input two integers:");
scanf ("%d %d",&a,&b);
c=a/b;
printf ("The quotient of a and b is :%d\n",c);
>
return 0;
}
使用const常量定义圆周率pi=,编程从键盘输入圆的半径r,计算并输出圆的周长和面积。输出的数据保留两位小数点。
输入格式要求:"%lf"
提示信息:"Input r:"
输出格式要求:
"printf WITHOUT width or precision specifications:\n"
"circumference = %f, area = %f\n"
"printf WITH width and precision specifications:\n"
~
"circumference = %, area = %\n"
程序运行示例如下:
Input r:printf WITHOUT width or precision specifications:
circumference = , area =
printf WITH width and precision specifications:
circumference = , area =
#include <>
int main()
~
{
const double PI=;
double r;
printf("Input r:");
scanf("%lf", &r);
printf("printf WITHOUT width or precision specifications:\n");
printf("circumference = %f, area = %f\n",2*PI*r,PI*r*r);
printf("printf WITH width and precision specifications:\n");
printf("circumference = %, area = %\n",2*PI*r,PI*r*r);
return 0;
|
}
写一个程序,将接收的华氏温度转换为对应的摄氏温度。程序应显示如下的提示信息: Please input fahr:
然后输入一个十进制数并回车,然后程序以合适的消息形式输出转换后的华氏温度。程序使用如下的公式完成转换:摄氏温度= *(华氏温度–)/
输入格式要求:"%lf"
提示信息:"Please input fahr: "
输出格式要求:"The cels is: %.2f"
#include <>
|
#include <>
int main()
{
double f;
double c;
printf("Please input fahr: ");
scanf("%lf",&f);
c=*/;
printf("The cels is: %.2f",c);
return 0;
,
}
从键盘输入任意的字符,按下列规则进行分类计数。
第一类:‘0’,‘1’,‘2’,‘3’,‘4’,‘5’,‘6’,‘7’,‘8’,‘9’
第二类:‘+’,‘-’,‘*’,‘/’,‘%’,‘=’
第三类:其它字符。
输出格式要求:"class1=%d, class2=%d, class3=%d\n"
程序运行示例如下:
ghdf^%^#$^&(+-//+_8*(\
class1=1, class2=7, class3=14
#include <>
^
int main()
{
char ch;
int a = 0,b = 0,c = 0;
while ((ch = getchar()) != '\n') /*当读入的字符不是换行符时*/
{
if (ch >= '0' && ch <= '9') /*判断是否是数字*/
++a;
else if (ch == '+'||ch == '-'||ch == '*'||ch == '%'||ch == '/'||ch == '=') /*判断是否是巴拉巴拉*/
++b;
{
else
/*是其它字符*/
++c;
}
printf("class1=%d, class2=%d, class3=%d\n",a,b,c);
return 0;
}要求:
输入为一个数n;
输出为1~n的奇数的阶乘之和;
、
要求使用函数实现
输入输出示例(第一行为输入,第二行为输出):
5
127
#include<>
long Fact(int n)
{
int i;
long result=1;
for(i=1;i<=n;i++)
}
{
result*=i;
}
return result;
}
int main()
{
int m,j,sum;
long ret;
scanf("%d",&m);
:
sum=0;
for(j=1;j<=m;j=j+2)
{
ret=Fact(j);
sum=sum+ret;
}
printf("%d\n",sum);
return 0;
}
;
键盘任意输入一下整数n,编程计算输出1~n之间的素数之和。
要求:判断素数用函数实现。
说明:素数是不能被1和它本身以外的其它整数整除的正整数(负数、0和1都不是素
数)
输入输出示例(第一行为输入,第二行为输出):
10
17
#include <>
#include <>
int ss(int n)
>
{
int i;
if(n<2) return 0;
for (i=2; i<=(int)sqrt((double)n); i++)
if (n%i==0) return 0;
return 1;
}
int main(void)
{
int i,sum=0,n;
!
scanf("%d",&n);
for (i=1; i<=n; i++)
if(ss(i))
sum+=i;
printf("%d\n",sum);
return 0;
}
从键盘多次输入不同的整数n,编程计算输出1~n之间的素数之和。
要求:
1)判断素数调用函数实现;
,
2)用循环结构,输入5次不同的整数。
输入输出实例(奇数行为输入,偶数行为输出):
25
100
17
58
28
100
37
197
!100
1060
#include <>
#include <>
int ss(int n)
{
int i;
if(n<2) return 0;
for (i=2; i<=(int)sqrt((double)n); i++)
:
if (n%i==0) return 0;
return 1;
}
int main(void)
{
int i,sum=0,n;
int counter=0;
do{
scanf("%d",&n);
counter++;
@
for (i=1; i<=n; i++)
if(ss(i))
sum+=i;
printf("%d\n",sum);
sum=0;
}while(counter<=4);
return 0;
}
(请用一维数组完成)某个公司采用公用电话传递数据,数据是四位的整数,在传递过程中是加密的,加密规则如下:每位数字都加上5, 然后用和除以10 的余数代替该数字,再将第一位和第四位交换,第二位和第三位交换。
"
输入格式要求:"%d"
提示信息:"Input a 4 digits number\n"
输出格式要求:"%d"
程序运行示例如下:
Input a 4 digits number
1234
9876
#include <>
int main ()
{
—
int Digit[4];
int n;
int i;
int m;
printf ("Input a 4 digits number\n");
scanf("%d",&n);
Digit[0]=n/1000;
Digit[1]=(n-1000*Digit[0])/100;
Digit[2]=(n-Digit[0]*1000-Digit[1]*100)/10; Digit[3]=n-Digit[0]*1000-Digit[1]*100-Digit[2] *10;
)
for(i = 0;i <=3;i++)
{
Digit[i]=(Digit[i]+5)%10;
}
m=
Digit[0]+10*Digit[1]+100*Digit[2]+1000*Digit[ 3];
printf("%d",m);
return 0;
}
(请用二维数组完成)从键盘为3*3的矩阵输入数据,找出主对角线上最大的元素,以及所在的行号。(第一行行号为0)
**输入格式要求:"%d"
*
**输出格式要求:"max=%d ,row=%d"
屏幕输入数据,输出最终结果(每个数字之间空一格):
程序运行示例如下:
1 2 3
4 5 6
7 8 9
max=9 ,row=2
# include <>
int main ()
{
,
int i, j;
int s[3][3];
int max, row;
for (i = 0; i < 3; i++)
{
for (j = 0; j < 3; j++)
{
scanf ("%d", &s [i][j]);
}
}
)
max = s [0][0];
row = 0;
for (i = 0; i < 3; i++)
{
if (max < s [i][i])
{
max = s [i][i];
row = i;
}
}
{
printf ("max=%d ,row=%d", max, row);
return 0;
}
计算游戏人员的年龄。有5个人围坐在一起,问第5个人多大年纪,他说比第4个人大2岁;问第4个人,他说比第3个人大2岁;问第3个人,他说比第2个人大2岁;问第2个人,他说比第1个人大2岁。第1个人说自己10岁,问第5个人多大年纪。输入格式:无
输出格式:"The 5th person's age is %d\n"
# include <>
int Fs (int x);
int main ()
、
{
int age;
int n = 5;
age = Fs (n);
printf ("The 5th person's age is %d\n", age);
return 0;
}
int Fs (int x)
{
{
if (x == 1)
return 10;
else
return 2 + Fs (x - 1);
}
输入一组包含10个整数的数组,找出其中的最小元素,并与第一个元素交换。输出这个数组。要求交换元素时调用swap_min函数。
输入输出示例(第一行为输入,第二行为输出):
22 20 9 8 7 6 12 17 1 3
1 20 9 8 7 6 1
2 17 22 3#include <>
#include <>
【
void swap_max(int *a,int *b);
int main()
{
int a[11];
int i,j,k;
for(i=0;i<10;i++)
{
scanf(" %d",&a[i]);
}
k=0;
#
for(j=0;j<10;j++)
{
if(a[j]>a[k])
{
k=j;
}
}
swap_max(&a[k],&a[0]);
printf("%d %d %d %d %d %d %d %d %d %d",a [0],a[1],a[2],a[3],a[4],a[5],a[6],a[7],a[8],a[9]);
return 0;
~}
void swap_max(int *a,int *b)
{
int temp;
temp=*a;
*a=*b;
*b=temp;
}
按照给定的函数原型编程实现两个字符串的连接(不允许使用字符串连接函数strcat)。函数原型:
!
void Mystrcat(char a[ ], char b [ ]);
要求:
将字符数组a中存放的字符串连接到字符数组b中;在主函数读入两个字符串(读入的字符串可包括空格);连接之后的字符串在主函数输出;字符串长度最长为70。
输入输出样例(前两行为输入,最后一行为输出):
Hello!
How are you
How are youHello!#include <>
#include <>
void Mystrcat(char a[],char b[]);
int main()
~
{
char a[80],b[80];
gets(a);
gets(b);
Mystrcat(a,b);
puts(a);
return 0;
}
void Mystrcat(char a[],char b[])
{
(
int i,n,m;
m=strlen(b);
n=strlen(a);
for (i = 0; i < m+1; ++i)
{
a[n+i]=b[i];
}
a[m+n+1]='\0';
}
…
用循环结构编程,输出如下图案。
*
***
*****
***
*
# include <>
# define N 5
int main ()
{
-
char m [N][N];
int i;
for (i = 0; i < N; i++)
{
if (i == 0 || i == 4)
{
printf (" %c\n", m[0][2] = '*');
}
else if (i == 1 || i == 3)
{
、
printf (" %c%c%c\n", m [1][1] = '*', m[1][2] = '*', m[1][3] = '*');
}
else if (i == 2)
{
printf ("%c%c%c%c%c\n", m [i][0] = '*', m [i][1] = '*', m [i][2] = '*', m [i][3] = '*', m [i][4] = '*');
}
}
return 0;
}
^
有30个人,其中有男人、女人和小孩,在一家饭馆吃饭共花了50元:每个男人花3元,每个女人花2元,每个小孩花1元,问男人、女人和小孩各几人
**输出格式要求:(前两行为表头格式,最后一行为输出答案格式,有几种可能答案输出几行,第一个%2d表示行号(从1开始),后三个%d分别为男人、女人、小孩的人数,按男人数递增顺序输出)
"\tMEN\tWOMEN\tCHILDREN\n"
"-----------------------------------------\n"
"%2d:\t%d\t%d\t%d\n"
# include <>
# define N 30
int main ()
{
int man, woman, child;
:
int r= 0;
printf
("\tMEN\tWOMEN\tCHILDREN\n");
printf
("-----------------------------------------\n");
for (man = 0; man < N; man++)
{
for (woman = 0; woman < N - man; woman ++)
{
child = N - man - woman;
{
if (3 * man + 2 * woman + 1 * child == 50)
.
{
r ++;
printf
("%2d:\t%d\t%d\t%d\n", r, man, woman, child);
}
}
}
}
return 0;
}
'
按如下函数原型,用二维数组作为函数参
数,编程计算并输出n×n阶矩阵的转置矩阵。
其中,n由用户从键盘输入。已知n值不超过10。
void Transpose(int a[][N], int n);
void InputMatrix(int a[][N], int n);
void PrintMatrix(int a[][N], int n);
输入提示信息要求:"Input n:\n"
输入格式:"%d"
输出提示信息:"The transposed matrix is:\n"输出要求:"%d\t"
输出矩阵时,每输出一行就换行
…
注:不能使用指针、结构体、共用体、文件、goto、枚举类型进行编程
输入输出示例:
Input n:
2
1 1
0 2
The transposed matrix is:
1 0
1 2
-
# include <>
# define N 10
void Transpose (int m[][N], int n);
void InputMatrix (int m [][N], int n);
void PrintMatrix (int m [][N], int n);
int main ()
{
int n;
int m [N][N];
printf ("Input n:\n");
!
scanf ("%d", &n);
InputMatrix (m, n);
Transpose (m, n);
printf ("The transposed matrix is:\n");
PrintMatrix (m, n);
return 0;
}void InputMatrix (int m [][N], int n) {
(
int i, j;
for (i = 0; i < n; i++)
{
for (j = 0; j < n; j++)
{
scanf ("%d", &m [i][j]);
}
}
}
'
void PrintMatrix (int m [][N], int n)
{
int i, j;
for (i = 0; i < n; i++)
{
for (j = 0; j < n-1; j++)
{
printf ("%d\t", m [i][j]);
}
printf ("%d", m [i][n - 1]);
)
printf ("\n");
}
}
void Transpose (int m [][N], int n)
{
int i, j;
int temp;
for (i = 0; i < n; i++)
{
(
for (j = 0; j < i; j++)
{
temp = m [i][j];
m [i][j] = m [j][i];
m [j][i] = temp;
}
}
}
从键盘任意输入一个字符串(字符串可以有空格),
)
在给定的一组字符串中寻找该输入字符串,若找到,则打印该字符串,否则打印"Not find!"。
注意:
(1)请提交修改正确后的完整源程序代码。(2)对于没有错误的语句,请不要修改
#include <>
#include <>
main()
{
int i, findFlag = 1;
;
char x;
char str[][13]={ "Pascal","Basic","Fortran", "Java","Visual C", "Visual Basic" };
printf("Input string:\n");
gets(x);
while (i<6 && !findFlag)
{
if (x=str[i])
{
findFlag = 0;
}
i++;
}
if (!findFlag)
{
printf("%s\n",x);
}
else
{
printf("Not find!\n");
}
}
#include <>
#include <>
int main()
{
int i = 0, f = 1;
char m [13];
char
str[][13]={ "Pascal","Basic","Fortran", "Java","Visual C", "Visual Basic" };
printf("Input string:\n");
gets(m);
while (i<6 && f == 1)
{
if (strcmp (m, str [i]) == 0)
{
f = 0;
}
i++;
}
if (f == 0)
{
printf("%s\n",m);
}
else
{
printf("Not find!\n");
}
return 0;
}
、