本文目录一览:
求几道简单C语言编程题答案
#include <stdio.h>
int main()
{
int y0, m0, d0, y1, m1, d1, age;
while (scanf("%d%d%d%d%d%d", &y0, &m0, &d0, &y1, &m1, &d1)) {
age = y1 - y0 - 1;
if (m1 > m0 || m1 == m0 && d1 >= d0)
++age;
printf("年龄为:%d周岁!\n", age);
}
return 0;
}
#include <stdio.h>
#include <string.h>
int main()
{
char p[500];
int i, count;
while (scanf("%s", p)) {
count = 0;
for (i = 0; i != strlen(p); ++i)
if (p[i] >= 'a' && p[i] <= 'z')
++count;
printf("%d\n", count);
}
return 0;
}
#include <stdio.h>
int main()
{
int n;
while (scanf("%d", &n)) {
if ((n & 1) == 0)
printf("%d是偶数!\n", n);
else
printf("%d,是奇数!\n", n);
}
return 0;
}
第三题(用EFO结束)?EOF吧?EOF已经是文件尾,怎样输出结果?
10道经典的C语言例题(含参考程序)
- 打印出所有的“水仙花数”,所谓“水仙花数”是指一个三位数,其各位数字立方和等于该数本身。例如,153是一个“水仙花数”,因为153=1^3+5^3+3^3。
#include <stdio.h>
#include <math.h>
int main()
{
int bai_wei, shi_wei, ge_wei, i, sum = 0;
for (i = 100; i < 1000; i++) {
bai_wei = i / 100;
shi_wei = (i % 100) / 10;
ge_wei = i % 10;
if (i == pow(bai_wei, 3) + pow(shi_wei, 3) + pow(ge_wei, 3)) {
printf("%d ", i);
sum++;
if (sum % 5 == 0)
printf("\n");
}
}
printf("\n");
return 0;
}
- 请输入任意两个整数x和y,求其最大公约数和最小公倍数。
#include <stdio.h>
int main()
{
int x, y, min, max, i;
printf("请输入任意两个整数:");
scanf("%d%d", &x, &y);
min = x < y ? y : x;
max = x > y ? x : y;
for (i = min; i > 0; i--)
if (x % i == 0 && y % i == 0) {
printf("这两个整数的最大公约数为:%d\n", i);
break;
}
for (i = max; i <= x * y; i++)
if (i % x == 0 && i % y == 0) {
printf("这两个整数的最小公倍数为:%d\n", i);
break;
}
return 0;
}
- 输入一行字符,分别统计出其中英文字母、空格、数字和其它字符的个数。
#include <stdio.h>
#include <string.h>
#define N 50
int main()
{
int sum1 = 0, sum2 = 0, sum3 = 0, sum4, i = 0;
char str[N];
printf("请输入一串字符串:");
scanf("%s", str);
for (i = 0; i < strlen(str); i++) {
if ((str[i] >= 'a' && str[i] <= 'z') || (str[i] >= 'A' && str[i] <= 'Z'))
sum1++;
if (str[i] == ' ')
sum2++;
if (str[i] >= '0' && str[i] <= '9')
sum3++;
}
sum4 = strlen(str) - sum1 - sum2 - sum3;
printf("英文字母的个数:%d\n", sum1);
printf("空格的个数:%d\n", sum2);
printf("数字的个数:%d\n", sum3);
printf("其他符号的个数:%d\n", sum4);
return 0;
}
- 求s=a+aa+aaa+aaaa+aa…a的值,其中a是一个数字。例如2+22+222+2222+22222(此时共有5个数相加),几个数相加有键盘控制。
#include <stdio.h>
#include <math.h>
int main()
{
int a, n, s = 0, i, x = 0, y = 0;
printf("请输入整数a的值:");
scanf("%d", &a);
printf("请输入相加的个数n:");
scanf("%d", &n);
for (i = 0; i < n; i++) {
x = y + 2 * pow(10, i);
y = x;
s = s + x;
}
printf("s=%d\n", s);
return 0;
}
- 一个数如果恰好等于它的因子之和,这个数就称为“完数”。例如6=1+2+3。编程找出1000以内的所有完数。
#include <stdio.h>
int main()
{
int sum = 0, i, j;
printf("在1000以内的完数有:");
for (i = 2; i <= 1000; i++) {
for (j = 1; j < i; j++)
if (i % j == 0)
sum = sum + j;
if (sum == i)
printf("%d ", i);
sum = 0;
}
printf("\n");
return 0;
}
- 输入一个不多于5位的正整数,要求:1、求它是几位数;2、逆序打印出个位数字。
#include <stdio.h>
int pows(int a, int n)
{
int sum = 1, i;
for (i = 0; i < n; i++)
sum = sum * a;
return sum;
}
int main()
{
int n, i, k, x;
printf("n=");
scanf("%d", &n);
for (i = 1; i < 6; i++)
if (n / pows(10, i) == 0) {
printf("%d\n", i);
k = i;
break;
}
for (i = 0; i < k; i++) {
x = n / pows(10, i) % 10;
printf("%d", x);
}
printf("\n");
return 0;
}
- 输入一个5位数,判断它是不是回文数。即12321是回文数,个位与万位相同,十位与千位相同。
#include <stdio.h>
int main()
{
int n, a[5], i = 0;
printf("请输入一个5位数:");
scanf("%d", &n);
while (n != 0) {
a[i] = n % 10;
n = n / 10;
i++;
}
if (a[0] == a[4] && a[1] == a[3])
printf("这个数是回文数\n");
else
printf("这个数不是回文数\n");
return 0;
}
- 利用递归算法,将所输入的5个字符,以相反顺序打印出来。
#include <stdio.h>
void digui(char a[], int n)
{
if (n == 1)
printf("%c", a[0]);
else {
printf("%c", a[n - 1]);
digui(a, n - 1);
}
}
int main()
{
char str[5];
printf("请输入5个字符:");
scanf("%s", str);
digui(str, 5);
printf("\n");
return 0;
}
- 有一分数序列:2/1,3/2,5/3,8/5,13/8,21/13…求出这个序列的前20项之和。
#include <stdio.h>
int main()
{
int i, a = 1, b = 1;
float sum = 0.0;
for (i = 1; i <= 20; i++) {
sum = sum + (float)(a + i) / b;
b = a + i;
a = i;
}
printf("sum=%f\n", sum);
return 0;
}
- 利用递归算法求5!。
#include <stdio.h>
int digui(int n)
{
if (n == 1)
return 1;
else
return n * digui(n - 1);
}
int main()
{
int n, sum;
printf("n:");
scanf("%d", &n);
sum = digui(n);
printf("sum=%d\n", sum);
return 0;
}
C语言入门编程填空题,求详细注释和答案解释。
#include "stdio.h"
int main()
{
int x, y, z, zhongjian;
printf("Please input x,y,z:");
scanf("%d%d%d", &x, &y, &z);
zhongjian = z;
z = x;
x = y;
y = zhongjian;
printf("x=%d\ny=%d\nz=%d\n", x, y, z);
return 0;
}