1.输出菱形。
#include<stdio.h>
#include<windows.h>
#pragma warning(disable:4996)
int main()
{
int i,j,k,n;
printf("请输入一位整数:\n");
scanf("%d",&n);
//菱形的上三角
for(i=1;i<=n;i++)
{
for(j=n-1;j>=i;j--)
{
printf(" ");
}
for(k=1;k<=2*i-1;k++)
{
printf("*");
}
printf("\n");
}
//菱形的下三角
for(i=n-1;i>=1;i--)
{
for(j=i;j<=n-1;j++)
{
printf(" ");
}
for(k=1;k<=2*i-1;k++)
{
printf("*");
}
printf("\n");
}
system("pause");
return 0;
}
2.求出0~999之间的所有“水仙花数”并输出。
#include<stdio.h>
#include<Windows.h>
int main()
{
int i = 0;
int ge = 0;
int shi = 0;
int bai = 0;
for (i = 1; i <= 999; i++)
{
bai = i / 100;
shi = i / 10 % 10;
ge = i % 10;
if (ge*ge*ge + shi*shi*shi + bai*bai*bai == i)
{
printf("%d ", i);
}
}
system("pause");
return 0;
}
3.求Sn=a+aa+aaa+aaaa+aaaaa的前5项之和,其中a是一个数字,例如:2+22+222+2222+22222
#include<stdio.h>
#include<Windows.h>
#pragma warning(disable:4996)
int main()
{
int a,i;
int sum = 0;
int temp = 0;
scanf("%d", &a);
for (i = 1; i <= 5; i++)
{
temp = temp * 10 + a;
sum += temp;
}
printf("%d", sum);
system("pause");
return 0;
}
4.编写一个程序,它从标准输入读取C源代码,并验证所有的花括号都正确的成对出现。
#include <stdio.h>
#include <windows.h>
int main(void)
{
char ch;
int counter = 0;
while ((ch = getchar()) != EOF && ch != '\n')
{
if ('{' == ch)
{
counter++;
}
else if ('}' == ch)
{
counter--;
}
if (counter < 0)
{
printf("input error\n");
return -1;
}
}
if (0 == counter)
{
printf("success!\n");
}
else
{
printf("failed!\n");
}
system("pause");
return 0;
}