English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Tutorial di base del linguaggio C

Controllo di flusso del linguaggio C

Funzioni del linguaggio C

Array del linguaggio C

Puntatori del linguaggio C

Stringhe del linguaggio C

Struttura del linguaggio C

File del linguaggio C

C Altro

Manuale di riferimento del linguaggio C

Input/output (I/O) del linguaggio C

In questo tutorial, imparerai come utilizzare la funzione scanf() per ottenere input dall'utente e come utilizzare la funzione printf() per visualizzare l'output all'utente.

Output in linguaggio C

Nel linguaggio C, printf() è una delle principali funzioni di output. La funzione invia output formattato sullo schermo. Ad esempio,

Esempio 1: Output in linguaggio C

#include <stdio.h>    
int main()
{ 
    // Stampa la stringa tra virgolette
    printf("C Programming");
    return 0;
}

输出结果

C Programming

Come funziona questo programma?

  • Tutti i programmi validi in C devono includere la funzione main(). Il codice inizia ad eseguire dal punto di partenza della funzione main().

  • printf() è una funzione di libreria per formattare l'output inviato sullo schermo. La funzione stampa la stringa tra virgolette.

  • Per utilizzare la funzione printf() nel nostro programma, dobbiamo includere la libreria di intestazione stdio.h utilizzando la direttiva #include <stdio.h> .

  • return 0; La frase main() è la "stato di uscita" del programma. È opzionale.

Esempio 2: Output di numeri interi

#include <stdio.h>
int main()
{
    int testInteger = 5;
    printf("Number = %d", testInteger);
    return 0;
}

输出结果

Number = 5

Usiamo il segnaposto di formato %d per stampare il tipo int. In questo caso, il %d all'interno delle virgolette sostituirà il valore di testInteger.

Esempio 3: Output di numeri a precisione singola e doppia

#include <stdio.h>
int main()
{
    float number1 = 13.5;
    double number2 = 12.4;
    printf("number1 = %f\n", number1);
    printf("number2 = %lf", number2);
    return 0;
}

输出结果

number1 = 13.500000
number2 = 12.400000

Per stampare un float, utilizziamo il segnaposto di formato %f. Allo stesso modo, usiamo %lf per stampare valori double.

Esempio 4: Stampa di un carattere

#include <stdio.h>
int main()
{
    char chr = 'a';    
    printf("character = %c.", chr);  
    return 0;
}

输出结果

character = a

Per stampare un char, utilizziamo il segnaposto di formato %c.

Input in C

In programmazione C, scanf() è una delle funzionalità più comuni per accettare input dall'utente. Questa funzionalità scanf() legge input formattati dallo standard input (ad esempio, la tastiera).

Esempio 5: Input e Output di numeri interi

#include <stdio.h>
int main()
{
    int testInteger;
    printf("Inserisci un numero: ");
    scanf("%d", &testInteger);  
    printf("Number = %d", testInteger);
    return 0;
}

输出结果

Inserisci un numero: 4
Number = 4

In questo caso, abbiamo utilizzato il segnaposto di formato %d della funzione scanf() per ricevere il valore numerico intero dell'utente. Quando l'utente inserisce un intero, esso viene memorizzato nella variabile testInteger.

Attenzione, scanf() utilizza &testIntegerinside. Questo è perché &testInteger ottiene l'indirizzo testInteger e il valore inserito dall'utente viene memorizzato in quell'indirizzo.

Esempio 6: Input e Output di numeri a precisione singola e doppia

#include <stdio.h>
int main()
{
    float num1;
    double num2;
    printf("Inserisci un numero: ");
    scanf("%f", &num1);
    printf("Inserisci un altro numero: ");
    scanf("%lf", &num2);
    printf("num1 = %f\n", num1);
    printf("num2 = %lf", num2);
    return 0;
}

输出结果

输入一个数字: 12.523
输入另一个数字: 10.2
num1 = 12.523000
num2 = 10.200000

float和double我们分别使用%f和%lf格式说明符。

示例7:C 字符 I / O

#include <stdio.h>
int main()
{
    char chr;
    printf("输入一个字符: ");
    scanf("%c",&chr);     
    printf("您输入了 %c.", chr);  
    return 0;
}

输出结果

输入一个字符: g
您输入了 g.

当用户在上述程序中输入字符时,字符本身不会被存储。而是存储一个整数值(ASCII值)。

当我们使用%c文本格式显示该值时,将显示输入的字符。如果%d用于显示字符,则将其ASCII值打印出来。

示例8:ASCII值

#include <stdio.h>
int main()
{
    char chr;
    printf("输入一个字符: ");
    scanf("%c", &chr);     
    //当使用%c时,将显示一个字符
    printf("您输入了 %c.\n",chr);  
    //使用%d时,显示ASCII值
    printf("ASCII 值为 % d.", chr);  
    return 0;
}

输出结果

输入一个字符: g
您输入了 g.
ASCII 值为 103.

多个值输入输出(I/O)

这是您可以从用户那里获取多个输入并显示它们的方法示例。

#include <stdio.h>
int main()
{
    int a;
    float b;
    printf("输入整数,然后再输入浮点数: ");
  
    //接受多个输入
    scanf("%d%f", &a, &b);
    printf("您输入了%d和 %f", a, b);  
    return 0;
}

输出结果

输入整数,然后再输入浮点数: -3
3.4
您输入了 -3 和 3.400000

I / O的格式说明符

从以上示例中可以看到,我们使用

  • %d 对应为 int

  • %f 对应为 float

  • %lf 对应为 double

  • %c 对应为 char

这是常用的C数据类型及其格式说明符的列表。

数据类型格式说明符
int%d
char%c
float%f
double%lf
short int%hd
㩵n
long int%li
long long int%lli
unsigned long int%lu
unsigned long long int%llu
signed char%c
unsigned char%c
long double%Lf