C言語クラシックプログラミング282ケース09

059文字関数を使用して文字を入出力する

さまざまな文字入力関数を使用して、ユーザー入力を受け取ります。
ここに画像の説明を挿入

#include<stdio.h>
#include<math.h>
#include<time.h>
#include<stdlib.h>
#include<string.h>

  main()
{
    
    
   	char x1, x2, x3;
   	//不需要输enter键
   	x1 = getchar();
	x2 = getchar();
    x3 = getchar();
   
   	putchar(x1);
   	printf("\n");
   		
   	putchar(x2);
   	printf("\n");
   	
   	putchar(x3);
   	printf("\n");
   
	printf("\n");
 }
 

getche()関数は、キーボードから文字を読み取って表示し、次のステートメントを直接実行するために使用されます。
getch()関数は、キーボードから文字を読み取って表示するために使用されますが、画面には表示せず、次のステートメントを実行します。
getchar()関数は、キーボードから文字を読み取って表示し、入力が終了するのを待つために使用されます。ユーザーがEnterキーを押すと、次のステートメントが実行されます。
putchar()は、文字定数または文字変数を画面に出力するために使用されます
ここに画像の説明を挿入

060出力相対最小整数

数学関数を使用して、次のことを実現します。キーボードから数値を入力して、相対的な最小の整数を見つけます。

Cライブラリ関数doubleceil(double x)は、x以上の最小の整数値を返します。


#include<stdio.h>
#include<math.h>
#include<time.h>
#include<stdlib.h>
#include<string.h>

  main()
{
    
    
   	float a;
   	
   	scanf("%f", &a);
   	printf("%f", ceil(a));
   
	printf("\n");
 }

061小文字を大文字に変換する

大文字と小文字のASCIIコードの違いは32です。
小文字を大文字に変換する方法:小文字のASCIIコードから32を引いて、対応する大文字を取得します
これが引用です

#include<stdio.h>
#include<math.h>
#include<time.h>
#include<stdlib.h>
#include<string.h>

  main()
{
    
    
   	char c1, c2;
   	
   	printf("输入小写字母:\n");
   	c1 = getchar();
   	c2 = c1 - 32;
   	
   	printf("显示转换大写字母:\n");
   	putchar(c2);
   
	printf("\n");
 }

062プールの水噴射の問題

プールを水で満たす4つの運河(ABCD)があります。シングルAが開いている場合は3日、シングルBが開いている場合は1日、シングルCが開いている場合は4日、シングルDが開いている場合は5満日; Aが開いている場合B、C、Dが同時にプールを開くのは何日ですか?

プールが1でいっぱいであると仮定すると、A、B、C、およびDの速度を個別に計算できます。次に、水が一緒に注入されるため、日=プールがいっぱい/すべてのチャネルの速度です。

#include<stdio.h>
#include<math.h>
#include<time.h>
#include<stdlib.h>
#include<string.h>

  main()
{
    
    
   	float sum = 1, a, b, c, d, day;
   	
   	a = sum / 3;
   	b = sum / 1;
   	c = sum / 4;
   	d = sum / 5;
   	
   	day = 1 / (a + b + c + d);
   
    printf("%f 天\n", day);
    
	printf("\n");
 }
 

063 *を使用してパターンを出力します

出力関数printf()を使用してMRパターンを出力します*
ここに画像の説明を挿入

#include<stdio.h>
#include<math.h>
#include<time.h>
#include<stdlib.h>
#include<string.h>

  main()
{
    
    
   	printf("   * *     **\n");
   	printf("  * * *   * *\n");
   	printf(" *     *  **\n");
    printf("*       **  *\n");
	printf("\n");
 }
 

ここに画像の説明を挿入

064文字の先行を出力します

文字はASCIIコードの形式でメモリに格納されます。これは、整数データの実際の格納でもあります。

文字の先行文字は、文字のASCIIコード値から1を引いたものです。

#include<stdio.h>
#include<math.h>
#include<time.h>
#include<stdlib.h>
#include<string.h>

  main()
{
    
    
   char c1, c2;
   
   printf("输入字符:\n");
   c1 = getchar();
   c2 = c1 - 1;
   
   printf("前驱字符\n");
   putchar(c2); 
   
   printf("\n");
 }

065学生の総合成績と平均成績を探す

3人の生徒の成績を入力し、これら3人の生徒の合計成績と平均成績を見つけます。

合計スコアがint型に設定されている
場合、
法則1:平均スコアを計算するとき、定数3は3.0と記述し、
法則2:強制型変換を使用します。
ここに画像の説明を挿入

#include<stdio.h>
#include<math.h>
#include<time.h>
#include<stdlib.h>
#include<string.h>

  main()
{
    
    
  	int  n1, n2, n3;
  	float sum = 0, ave;
  	scanf("%d %d %d", &n1, &n2, &n3);
  	
  	sum = n1 + n2 + n3;
  	ave = sum / 3;
  	
  	printf(" 总成绩:%f,平均成绩: %f" ,sum, ave);
  	
   printf("\n");
 }
 

066 回文素数

左から右に読んだときと右から左に読んだときの整数iは同じであり、素数である場合、それは回文素数であり、1000以内のすべての回文素数を見つけます。

回文数
を判断します。2桁で10の位が同じ
かどうかを判断するだけでよい場合、3桁で100の位と1の位が同じかどうかを判断するだけでよい場合。

// ——————————————————————  官方————
#include<stdio.h>
#include<math.h>
#include<time.h>
#include<stdlib.h>
#include<string.h>

int ss(int i)
{
    
    
	int n;
	
	if(i == 1)
	{
    
    
		return 0;
	}
	
	if(i == 2)
	{
    
    
		return 1;
	}
	
    for(n = 2; n < i; n++)
    {
    
    
    	if( i % n == 0)
    	{
    
    
    		return 0;
		}
		else if(i != n + 1)
		{
    
    
			continue;
		}
		else 
		{
    
    
			return 1;
		}
	}
}

  main()
{
    
    
	int i, flag;
	
	
	for(i = 2; i < 1000 ; i++)
	{
    
    
		flag = ss(i);
	
		if(flag)
		{
    
    
			if(i / 100 == 0)
			{
    
    
				if(i / 10 == i % 10) 
				{
    
    
					printf("%d\n", i);
				}
			}
			else
			{
    
    
				if(i / 100 == i % 10) 
				{
    
    
					printf("%d\n", i);
				}
				
			}
			
		}
		
	}
  	
  	
   printf("\n");
 }
 
// —————————— ME _______
#include<stdio.h>
#include<math.h>
#include<time.h>
#include<stdlib.h>
#include<string.h>

int ss(int i)
{
    
    
	int n;
	
	if(i == 1)
	{
    
    
		return 0;
	}
	
	if(i == 2)
	{
    
    
		return 1;
	}
	
    for(n = 2; n < i; n++)
    {
    
    
    	if( i % n == 0)
    	{
    
    
    		return 0;
		}
		else if(i != n + 1)
		{
    
    
			continue;
		}
		else 
		{
    
    
			return 1;
		}
	}
}

  main()
{
    
    
	int i, flag, m, n1, n2, n3;
	
	
	for(i = 2; i < 1000 ; i++)
	{
    
    
		flag = ss(i);
		
		if(flag)
		{
    
    
		    //判断是几位的素数
			if(i / 100 == 0)  		//2位
			{
    
    
				m = i;
				n1 = m % 10;
				n2 = m / 10;
				if(n1 * 10 + n2 == i) 
				{
    
    
					printf("%d\n", i);
				}
			}
			else					//3位
			{
    
    
				m = i;
				n1 = m % 10;
				n2 = (m % 100) / 10;
				n3 = m / 100;
				if(n1 * 100 + n2 * 10 + n3 == i) 
				{
    
    
					printf("%d\n", i);
				}
				
			}
			
		}
		
	}
  	
  	
   printf("\n");
 }

おすすめ

転載: blog.csdn.net/qq_41070511/article/details/110874347