1. 程式人生 > >C語言入門 四

C語言入門 四

/1.在螢幕上輸出以下圖案:
//*
//***
//*****
//*******
//*********
//***********
//*************
//***********
//*********
//*******
//*****
//***
//*

#include<stdio.h>
#include<stdlib.h>
//每行列印的
void print(int x){
	int count = 0;
	while (1){
		printf("*");
		count++;
		if (count  > 2 * x - 1){
			break;
		}
	}

}

int main(){
	int i=0;
	int left = 6;
	
	for (i = 1; i < 14;i++ ){
		if (i < 8){

			print(i);
			printf("\n");
			
		}
		else
		{
			
			print(left);
			printf("\n");
			--left;
}

	}
	system("pause");
	return 0;
}

2.求出0~999之間的所有“水仙花數”並輸出。
“水仙花數”是指一個三位數,其各位數字的立方和確好等於該數本身,如;153=1+5+3?,則153是一個“水仙花數”。

在數論中,水仙花數(Narcissistic number)也稱為自戀數、自冪數、阿姆斯壯數或阿姆斯特朗數(Armstrong number),是指一N位數,其各個數之N次方和等於該數。
例如153、370、371及407就是三位數的水仙花數,其各個數之立方和等於該數:
153 = 1^3 + 5^3 + 3^3。
370 = 3^3 + 7^3 + 0^3。
371 = 3^3 + 7^3 + 1^3。
407 = 4^3 + 0^3 + 7^3。

#include<stdio.h>
#include<stdlib.h>
int main(){
	int gw = 0;
	int sw = 0;
	int bw = 0;
	int n = 0;

	for (n = 100; n < 999; n++){
		gw = n % 10;
		sw = n / 10 % 10;
		bw = n / 100;
		if (gw*gw*gw + sw*sw*sw + bw*bw*bw == n){
			printf("水仙花數是%d\n", n);
		}
	}

	system("pause");
	return 0;

}

求Sn=a+aa+aaa+aaaa+aaaaa的前5項之和,其中a是一個數字,
例如:2+22+222+2222+22222

#include<stdio.h>
#include<stdlib.h>
int main(){
	int a1 = 0;
	int a2 = 0;
	int a3 = 0;
	int a4 = 0;
	int a5 = 0;
	int i = 0;
	for (i = 1; i < 10; i++){
		a1 = i;
		a2 = i + i * 10;
		a3 = i + i * 10 + i * 100;
		a4 = i + i * 10 + i * 100 + i * 1000;
		a5 = i + i * 10 + i * 100 + i * 1000 + i * 10000;
		printf("%d\n", a1 + a2 + a3 + a4 + a5);
	}
	system("pause");
	return 0;
}