C Primer Plus 第6版 第6章 编程练习
程序员文章站
2023-12-22 21:40:40
...
1.创建1个有26个元素的字符数组,存储26个小写字母,然后打印
#include<stdio.h>
int main()
{
char array_c[26];
for (int i = 0; i < 26; i++)
{
array_c[i] = 'a' + i;
}
for (int i = 0; i < 26; i++)
{
printf("%c ", array_c[i]);
}
getchar();
return 0;
}
2.使用嵌套循环打印
#include<stdio.h>
int main()
{
for (int i = 1; i <= 5; i++)
{
for (int j = 1; j <= i; j++)
printf("$");
printf("\n");
}
getchar();
return 0;
}
3.使用嵌套循环打印
#include<stdio.h>
int main()
{
for (int i = 1; i <= 6; i++)
{
for (int j = 1; j <= i; j++)
printf("%c",'F'+1-j);
printf("\n");
}
getchar();
return 0;
}
4.使用循环嵌套打印
#include<stdio.h>
int main()
{
char a = 'A';
for (int i = 1; i <= 6; i++)
{
for (int j = 1; j <= i; j++)
printf("%c",a++);
printf("\n");
}
getchar();
return 0;
}
5.打印金字塔型
#include<stdio.h>
int main()
{
char a = 'A';
printf("请输入一个大写字母");
scanf_s("%c", &a);
for (int i = 1; i <= 5; i++)
{
for (int j1 = 1; j1 <= 5 - i; j1++)
printf(" ");
for (int j2 = 1; j2 <= i; j2++)
printf("%c", a + j2-1);
for (int j3 = 1; j3 <= i - 1; j3++)
printf("%c", a + i - 1 - j3);
printf("\n");
}
getchar(); getchar();
return 0;
}
6. 打印表格,每一行有3个数,整数,平方,立方;
用户输入上下限。
#include<stdio.h>
int main()
{
int min;
printf("请输入下限");
scanf_s("%d",&min);
int max;
printf("请输入上限");
scanf_s("%d", &max);
for (int i = min; i <= max; i++)
{
printf("%10d %10d %10d\n", i, i*i, i*i*i);
}
getchar(); getchar();
return 0;
}
7.读入单词,倒序打印
#include<stdio.h>
#include<string.h>
int main()
{
char word[20];
printf("请输入单词");
scanf_s("%s", word,20);
for (int i = strlen(word)-1; i >= 0; i--) //下标是长度-1
printf("%c", word[i]);
getchar(); getchar();
return 0;
}
8.输入两个浮点数,打印两数差/两数乘积。
#include<stdio.h>
int main()
{
float a, b;
printf("请输入两个浮点数");
while (scanf_s("%f%f",&a,&b))
{
printf("(%f-%f)/(%f*%f)=%f\n", a, b, a,b, (a - b) / (a*b));
printf("请输入两个浮点数");
}
getchar(); getchar();
return 0;
}
9.略
10.用户输入下限和上限,程序打印下限和上限之间的整数的平方和。
#include<stdio.h>
int sum(int min, int max)
{
int sum = 0;
for (int i = min; i <= max; i++)
{
sum += i * i;
}
return sum;
}
int main()
{
int min, max;
printf("请输入下限和上限");
while (scanf_s("%d%d",&min,&max) && min < max)
{
printf("平方和从%d到%d是 %d\n", min*min,max*max,sum(min,max));
printf("请输入下限和上限");
}
printf("Done");
getchar(); getchar();
return 0;
}
11.略
12。
#include<stdio.h>
float sum(int n)
{
float sum = 0.0;
for (int i = 1; i <= n; i++)
{
sum += 1.0 / i;
}
return sum;
}
float sum2(int n)
{
float sum2 = 0.0;
int aa = 1;
for (int i = 1; i <= n; i++)
{
sum2 += 1.0 / i * aa;
aa *= -1;
}
return sum2;
}
int main()
{
int n = 1;
while (n > 0)
{
printf("输入项数:");
scanf_s("%d", &n);
printf("sum1 = %f,sum2 = %f\n", sum(n), sum2(n));
}
getchar(); getchar();
return 0;
}
13.
#include<stdio.h>
#include<math.h>
int main()
{
int t[8];
for (int i = 0; i < 8; i++)
{
t[i] = pow(2, i);
}
int i = 0;
do
{
printf("%d\t", t[i++]);
} while (i<8);
getchar(); getchar();
return 0;
}
14.