#include <stdio.h>
#include <stdlib.h>
#include<string.h>
int main(){
int n[1000000],i;
int x,all=0.;
int ave;
while(scanf("%d",&x)!=EOF){
for(i=1;i<=x;i++){
scanf("%d",&n[i-1]);
}
for(i=1;i<=x;i++){
all=all+n[i-1];
}
ave=all/i;
if(ave>59){printf("yes\n");}
if(ave<59){printf("no\n");}
}
return 0;
}
# c語言練習
###### tags: `computer`
>判斷是否為等腰三角形 c語言
```cpp=
#include<stdio.h>
int main()
{ int x,y,z,tootla1,tootla2,tootla3;
printf("enter the number\n");
scanf("%d%d%d",&x,&y,&z);
tootla1=x+y;
tootla2=x+z;
tootla3=y+z;
if(tootla1>z&&tootla2>y&&tootla3>x){
if(x==y&&x==z&&y==z){
printf("ture truangle\n");
}
else if(x==y||x==z||z==y){
printf("isocoles triangle\n");
}
else{
printf("not a isocoles triangle\n");
}
}
else if(x==0|z==0|y==0){
printf("can not be a triangle\n");
}
else{
printf("can not be a triangle\n");
}
return 0;
}
```
>直角三角形 c語言
```cpp=
#include<stdio.h>
int main()
{
int a,b,c;
printf("enter the number\n");
scanf("%d%d%d",&a,&b,&c);
if(a+b>c&&b+c>a&&a+c>b){
if(a^2+b^2==c^2|a^2+c^2==b^2|b^2+c^2==a^2){
printf("this is a 90 triangle\n");
}
else{
printf("this is not a 90 triangle\n");
}
}
else{
printf("can not be a triangle\n");
}
return 0;
}
```
>判斷能圍出甚麼三角形
```cpp=
#include<stdio.h>
int main()
{
int a,b,c;
printf("enter the number\n");
scanf("%d%d%d",&a,&b,&c);
if(a+b>c&&b+c>a&&a+c>b){
if(a==b&&b==c&&a==c){
printf("ture triangle\n");
}
else if(a==b|b==c|a==c){
printf("also triangle\n");
}
else if(a*a+b*b==c*c|a*a+c*c==b*b|b*b+c*c==a*a){
printf("90 triangle\n");
}
else{
printf("triangle\n");
}
}
else{
printf("can not be a triangle\n");
}
return 0;
}
```
>判斷三數大小找出最大值
```cpp=
#include<stdio.h>
int main()
{
int x,y,z,max;
printf("please enter three number\n");
scanf("%d%d%d",&x,&y,&z);
max=x;
if(max<=y){
max=y;
}
if(z>=y){
max=z;
}
printf("the max number is%d\n",max);
return 0;
}
```
>四個數字比大小找最大值
```cpp=
#include<stdio.h>
int main()
{
int x,y,z,a,max;
printf("enter four number\n");
scanf("%d%d%d%d",&x,&y,&z,&a);
max=x;
if(y>max){
max=y;
}
if(z>max){
max=z;
}
if(a>max){
max=a;
}
printf("the max number is%d\n",max);
return 0;
}
```
>switch首次練習
```cpp==
#include<stdio.h>
int main()
{
int x,y;
scanf("%d",&x);
switch(x){
case 29:
printf("harry\n");
break;
case 33:
printf("fat\n");
break;
default:
printf("no body\n");
break;
}
return 0;
}
```
>猜數字練習
```cpp==
#include<stdio.h>
int main()
{
int x ;
int harry=29;
int count=0;
while(count==0||x!=harry ){
printf("enter the number:");
scanf("%d",&x);
count=count+1;
if(x>harry ){
printf("too big\n");
}
if(x<harry){
printf("too small\n");
}
}
printf("you are right\n");
return 0;
}
```
>求平均
```cpp==
#include<stdio.h>
int main()
{
int sum=0;
int number;
int count=0;
float average;
printf("enter the number:");
scanf("%d",&number);
if(number==0){
printf("can not be a sentance");
}
else{
while(number!=0){
count=count+1;
sum=sum+number;
printf("enter the number:");
scanf("%d",&number);
}
average=(float)sum/count;
printf("average is %f",average);
}
return 0;
}
```
>switch練習
```cpp==
#include<stdio.h>
int main()
{
int x;
int tootle=0;
do{
printf("enter the count: ");
scanf("%d",&x);
switch(x){
case 1:tootle=tootle+10;
break;
case 2:tootle=tootle+20;
break;
case 3:tootle=tootle+30;
break;
case 4:tootle=tootle+40;
break;
}
}
while(x!=0);
printf("the tootle is %d",tootle);
return 0;
}
```
>計算加法 使用者自行輸入數字幾加到幾
```cpp==
#include<stdio.h>
int main()
{
int x=0,i,t,s;
printf("enter the number1:");
scanf("%d",&t);
printf("enter the number2:");
scanf("%d",&s);
for(i=t;i<=s;i++){
x=x+i;
}
printf("%d",x);
return 0;
}
```
>數星星
```cpp==
#include<stdio.h>
int main()
{
int x,t;
printf("enter the number of star you like:");
scanf("%d",&x);
for(t=1;t<=x;t++){
printf("*");
}
return 0;
}
```
>找質數
```cpp==
#include<stdio.h>
int main()
{
int x,number,y=0;
printf ("enter the number:");
scanf("%d",&x);
for(number=1;number<=x;number++){
if(x%number==0){
y=y+1;
}
}
if(y==2){
printf("this is the number can not found another number with it\n");//質數
}
else{
printf("this is the number can found another number with it\n");//不是質數
}
return 0;
}
```
>c語言 九九乘法表
```cpp==
#include <stdio.h>
int main()
{
int x,y,number;
printf("enter the number:");
scanf("%d",&number);
for(x=number;x<=9;x++){
for(y=1;y<=9;y++){
printf("%d x %d = %d\n",x,y,x*y);
}
}
return 0;
}
```
>c語言 輸出空心正方形
```cpp=
#include <stdio.h>
int main()
{
int x,t,a;//a是橫排的第幾個,t是直排的第幾個,x是輸入的變數
printf("enter the number:");
scanf("%d",&x);
for(a=1;a<=x;a++){
printf("*");
}
printf("\n");
for(a=1;a<=x-2;a++){
printf("*");
for(t=1;t<=x-2;t++){
printf(" ");
}
printf("*");
printf("\n");
}
for(a=1;a<=x;a++){
printf("*");
}
printf("\n");
}
```
>列出空心三角形
```cpp==
#include <stdio.h>
int main()
{
int x,t,a;
printf("enter the number:");
scanf("%d",&x);
printf("*\n");
for(a=0;a<=x-3;a++){
printf("*");
for(t=1;t<=a;t++){
printf(" ");
}
printf("*\n");
}
for(a=1;a<=x;a++){
printf("*");
}
return 0;
}
```
>猜數字使用亂數生成題目
```cpp==
#include <stdio.h>
#include<stdlib.h>
#include<time.h>
int main(){
srand(time(0));
int x;
int y=rand()%10;
printf("enter the number you guess:");
scanf("%d",&x);
while(x!=y){
if(x>y){
printf("too big\n");
}else{
printf("too small\n");
}
printf("enter the number you guess:");
scanf("%d",&x);
}
printf("you are right\n");
return 0;
}
```
>查詢數字的練習
```cpp==
#include <stdio.h>
#include<stdlib.h>
#include<time.h>
int main(){
int i,n[5];
for(i=1;i<5;i++){
printf("%d:",i);
scanf("%d",&n[i-1]);
}
while(1){
printf("Q =");
scanf("%d",&i);
if(i==0){
break;
}
printf("%d\n",n[i-1]);
}
return 0;
}
```
>查詢範圍內的數字
```cpp==
#include <stdio.h>
#include<stdlib.h>
#include<time.h>
int main(){
int i,n[10];
for(i=1;i<11;i++){
printf("enter the number:");
scanf("%d",&n[i-1]);
}
int l,r;
printf("L R ");
scanf("%d%d",&l,&r);
if(i==0||r==0){
break;
}
for(i=1;i<11;i++){
if(n[i-1]>=l&&n[i-1]<=r){
printf("%d ",n[i-1]);
}
}
return 0;
}
```
>查詢上限內最大數的練習
```cpp==
#include <stdio.h>
#include<stdlib.h>
#include<time.h>
int main(){
int i,n[10];
for(i=1;i<11;i++){
scanf("%d",&n[i-1]);
}
int updata,max=0;
printf("updata: ");
scanf("%d",&updata);
for(i=1;i<11;i++){
if(n[i-1]<updata&&n[i-1]>max){
max=n[i-1];
}
}
printf("%d",max);
return 0;
}
```
>畫出統計長條圖
```cpp==
#include <stdio.h>
#include<stdlib.h>
#include<time.h>
int main(){
int i,x;
int n[10]={0};
for(i=1;i<=10;i++){
scanf("%d",&x);
n[x-1/10]++;
}
int j;
for(i=1;i<=10;i++){
printf("%3d:",i*10);
for(j=1;j<=n[i-1];j++){
printf("*");
}
printf("\n");
}
return 0;
}
```
>找出最大值與平均數與總和
```cpp==
#include <stdio.h>
#include <stdlib.h>
#include<string.h>
#include<math.h>
int main(){
int max=0,x;
int tootle=0;
for(int i=1;i<=10;i++){
printf("enter the number:");
scanf("%d",&x);
tootle=tootle+x;
if(x>=max){
max=x;
}
}
printf("%d\n",max);
printf("tootle is %d\n",tootle);
int average=tootle/10;
printf("average is %d\n",average);
return 0;
}
```
>找出最大值與平均數與總和可擴充版
```cpp==
#include <stdio.h>
#include<stdlib.h>
#include<time.h>
int main(){
int n[10]={0},max=n[0],i,average;
int tootle=n[0];
for(int i=0;i<=9;i++){
printf("enter the number:");
scanf("%d",&n[i]);
}
for(i=0;i<=9;i++){
if(max<=n[i]){
max=n[i];
}
}
for(i=0;i<=9;i++){
tootle=tootle+n[i];
}
printf("%d\n",max);
printf("tootle is %d\n",tootle);
average=tootle/10;
printf("average is %d\n",average);
return 0;
}
```
>產生不重複的亂數
```cpp==
#include <stdio.h>
#include<stdlib.h>
#include<time.h>
int main(){
srand(time(0));
int x,n[10]={0},i;
for(i=1;i<=9;i++){
do{
x=rand()%10+1;
}while(n[x-1]!=0);
printf("%d",x);
n[x-1]++;
}
printf("\n");
return 0;
}
```
>使用交換法產生不重複的亂數
```cpp==
#include <stdio.h>
#include<stdlib.h>
#include<time.h>
int main(){
srand(time(0));
int i,n[10];
for(i=1;i<=10;i++){
n[i-1]=i;
}
for(i=1;i<=10;i++){
int j=rand()%(11-i)+i;
int t=n[i-1];
n[i-1]=n[j-1];
n[j-1]=t;
printf("%d",n[i-1]);
}
printf("\n");
return 0;
}
```
>泡沫排序法
```cpp==
#include <stdio.h>
#include <stdlib.h>
#include<time.h>
int main()
{
int n[10],i;
for(i=1;i<=10;i++){
printf("enter the number:");
scanf("%d",&n[i-1]);
}
int j;
for(i=1;i<=10;i++){
for(j=1;j<=10;j++){
if(n[j-1]>n[j]){
int a;
a=n[j-1];
n[j-1]=n[j];
n[j]=a;
}
}
}
for(i=1;i<=10;i++){
printf("%d\n",n[i-1]);
}
return 0;
}
```
>陣列的複製與隨機產生
```cpp==
#include <stdio.h>
#include <stdlib.h>
#include<time.h>
int main()
{
srand(time(0));
int n[10]={0},x[10]={0},i;
for(i=1;i<=10;i++){
n[i-1]=rand();
}
for(i=0;i<=9;i++){
x[i]=n[i];
}
for(i=1;i<=10;i++){
printf("%d ",n[i-1]);
}
printf("\n");
for(i=1;i<=10;i++){
printf("%d ",x[i-1]);
}
return 0;
}
```
>使用函式輸出一串陣列再輸出最大值
```cpp==
#include <stdio.h>
#include <stdlib.h>
#include<time.h>
int main(){
srand(time(0));
int arrayrand(int n[10]);
int arrayprintf(int n[10]);
int arraymax(int n[10]);
int n[10],i,max;
arrayrand(n);
arrayprintf(n);
arraymax(n);
return 0;
}
int arrayrand(int n[10]){
int i;
for(i=1;i<=10;i++){
n[i-1]=rand()%10;
}
}
int arraymax(int n[9]){
int j,i,t;
for(i=1;i<=10;i++){
for(j=1;j<=10;j++){
if(n[j-1]>n[j]){
t=n[j-1];
n[j-1]=n[j];
n[j]=t;
}
}
}
printf("%d",n[9]);
}
int arrayprintf(int n[10]){
int i;
for(i=1;i<=10;i++){
printf("%d ",n[i-1]);
}
printf("\n");
}
```
>在函式間傳遞陣列
```cpp==
#include <stdio.h>
#include <stdlib.h>
#include<time.h>
int maxv(int e[],int n);
int main(){
int n[3]={1,2,3444};
printf("%d\n",maxv(n,3));
int a[6]={4,5,6,7,8,9999999};
printf("%d\n",maxv(a,6));
return 0;
}
int maxv(int e[],int n){
int i,max;
max=e[0];
for(i=1;i<n;i++){
if(e[i]>max){
max=e[i];
}
}
return max;
}
```
>輸出從鍵盤讀入的數字
```cpp==
#include <stdio.h>
#include <stdlib.h>
#include<time.h>
int array_printf(char n[]);
int array_scanf(char n[]);
int main(){
char n[10],i;
printf("please enter the world :");
array_scanf(n);
array_printf(n);
}
int array_scanf(char n[]){
int i;
for(i=0;i<=99999999;i++){
scanf("%c",&n[i]);
if(n[i]=='\n'){
break;
}
}
}
int array_printf(char n[]){
int i;
for(i=0;n[i]!='\n';i++){
printf("%c",n[i]);
}
printf("\n");
}
```
>指標與陣列練習
```cpp==
#include <stdio.h>
#include <stdlib.h>
#include<time.h>
int main(){
int n[5];
int *p;
for(p=n;p!=n+5;p++){
*p=0;
printf("%d",*p);
}
return 0;
}
```
>難 使用malloc動態配置記憶體
```cpp==
#include <stdio.h>
#include <stdlib.h>
#include<time.h>
int main(){
int *n;
int j,count=0,x;
while(1){
scanf("%d",&x);
if(x==0){
break;
}
int* a=malloc(sizeof(int)*(count+1));
for(j=0;j<count;j++){
a[j]=n[j];
}
n=a;
n[count]=x;
count++;
}
for(j=0;j<count;j++){
printf("%d\n",n[j]);
}
printf("\n");
return 0;
}
```
>輸入不定個數字串的練習
```cpp=
#include <stdio.h>
#include <stdlib.h>
#include<time.h>
#include<string.h>
int main(){
int i=0;
char input[10],n[100][5];
while(1){
scanf("%s",input);
if(strcmp(input,"end")==0){
break;
}
strcpy(n[i],input);
i++;
}
int j;
for(j=0;j<=i;j++){
printf("%s ",n[j]);
}
printf("\n");
return 0;
}