1. C語言出現亂碼
有兩個問題:
一、變數a是float型,用%d輸入輸出會出錯,可以考慮把變數d定義成int型;
二、姓名是字元串,不是字元,可以考慮用字元數組來存儲。
修改如下:
#include<stdio.h>
#include<stdlib.h>
intmain()
{
inta;
floatb,c;
chard[10];
printf("請輸入你的姓名: ");
gets(d);
printf("請輸入你的年齡: ");
scanf("%d",&a);
printf("請輸入你的身高m: ");
scanf("%f",&b);
printf("請輸入你的體重kg: ");
scanf("%f",&c);//以下代碼測試輸入的正確性
printf("姓名:%s ",d);
printf("年齡:%d ",a);
printf("身高:%.2fm ",b);
printf("體重:%.2fkg ",c);
return0;
}
2. C語言運行的時候漢字全部亂碼怎麼回事
1、漢字亂碼是因為緩沖區有字元,需要用fflush(stdin);來清空鍵盤緩沖區,
使用getch等都是治標不治本的辦法,可以多學習一下fflush的使用,對於大批量的手動輸入,很用。
2、常式:
#include"stdio.h"
#include"stdlib.h"
#include<conio.h>
main()
{
charx;
while(1)
{
printf("請輸入一個小寫字母:");
fflush(stdin);//清空鍵盤緩沖區
x=getchar();
printf("大寫字母為: ");putchar(x-32);
}
}