Langage C initial-1.Composition du programme en langage C

1. Composition du programme de langage C

1. Structure de base du langage C

1. Les programmes en langage C sont composés de fonctions, c'est-à-dire que les fonctions sont les principaux composants du programme.

Le programme est constitué de plusieurs fonctions, chaque fonction est indissociable de la fonction principale (main), chaque fonction a et ne peut avoir qu'une seule fonction principale, et chaque programme démarre son exécution à partir de la fonction principale.

2. Structure de base :

Nom de la fonction du type de fonction (liste formelle des paramètres) {

            Corps de fonction (énoncé de structure de fonction)

             return(valeur de retour);

}

3.Les débutants doivent savoir

3.1 Chaque programme doit inclure un fichier d'en-tête, le plus classique est stdio.h (entrée-sortie standard).

Bien entendu, les fichiers d'en-tête ne se limitent pas à cela. Il existe également d'autres fichiers d'en-tête courants tels que stdlib.h et string.h.

Méthode de référence : #include<file name>

3.2 Fonctions du système

Par exemple, printf, scanf, etc. sont toutes des fonctions système, principalement des fonctions communes.

3.3printf (fonction de sortie formatée), scanf (fonction d'entrée formatée) ;

Format d'usage général

printf ("chaîne de contrôle de format", table d'expression); //Ce qu'est une chaîne de contrôle de format sera expliqué plus tard.

La méthode d'utilisation de scanf est la même que ci-dessus, mais il existe également des différences.

scanf("Chaîne de contrôle de format", table d'adresses variables);

#include<stdio.h>
int main(){
	int n;
	scanf("%d",&n);
	
	return 0;
}

**1. L'ordre des chaînes et des tableaux d'expressions est le même et ils correspondent un à un.


   2. Un point-virgule doit être ajouté après chaque instruction en langage C, il représente la fin de l'instruction.

#include<stdio.h>
int main(){
	printf("%d",123);//整型 
	printf("%f",3.14);//浮点型 
	printf("%c",abc);//字符型 
	
	return 0;
}

Comme le montre la figure, ce sont les types de données que les novices rencontreront. C'est également la méthode de base pour utiliser printf et scanf.

4. Chaîne de contrôle de format



4.1 Caractères d'échappement

Les caractères commençant par / sont très courants, comme /n, /t, etc.

4.2 Caractères de contrôle de format

Commençant par %, contrôle le type de données.

4.3 Caractères ordinaires

À l'exception des deux caractères ci-dessus, tous les autres caractères de la table des caractères de contrôle de format sont des caractères ordinaires et sont affichés tels quels.

5.Type de données

Il existe neuf types de données en langage C, que vous apprendrez plus tard.

Ce qui suit est une introduction aux plus courants

Type entier : entier sans décimales.

Type à virgule flottante (type réel) : nombres avec décimales, tels que 3,14, etc. Les nombres à virgule flottante ne peuvent pas être stockés avec précision dans l'ordinateur et les données sont facilement perdues.

Type de caractère : il peut s'agir de lettres anglaises ou de divers symboles sur le clavier. En même temps, le type de caractère est également un type entier spécial. La méthode de stockage des entiers de 0~2^8-1 est la même que le type de caractère.

Les caractères sont divisés en caractères et chaînes. Les caractères sont composés de " et n'occupent qu'un octet, tandis que les chaînes sont composées de " " et leur longueur est déterminée par le nombre de caractères, comme la longueur de la chaîne " abc ". vaut 4, pourquoi ? Parce que chaque lettre de abc occupe trois octets, mais à l'intérieur de l'ordinateur, le système ajoutera automatiquement l'identifiant de fin "/0" à la fin de la chaîne. Ce caractère occupe également un octet, donc la longueur totale est 4.

6. Constantes et variables

Variable : Le nom de la variable est l'espace de stockage mémoire correspondant à la variable.

Constantes : les types de données ci-dessus sont tous des constantes.

6.1 Sortie des variables

Il ressort de ce qui précède que l'entrée et la sortie des variables doivent être contrôlées par des symboles de contrôle de format. Ici, nous parlons principalement de sortie. Si vous devez afficher un nombre entier, alors %d (voir le tableau ci-dessus), c'est très simple. Jetons un coup d'oeil à cet exemple ci-dessous

De ce qui précède, nous pouvons voir que sa partie de sortie est en fait différente de ce que j'ai écrit. Ce blogueur est-il trop stupide pour faire ça ? Hahaha, bien sûr que non. A quoi penses-tu?

%-6d : représente la largeur des données est de 6, - représente l'alignement à droite, + représente l'alignement à gauche. La question est donc : que se passe-t-il si la largeur des données est supérieure à 6 ? Rien à faire, sortie normale.

%8.3f : Après l'explication ci-dessus, vous savez peut-être maintenant ce que signifie ce 8. Alors, que signifie ce .3 ? Le nombre après la virgule décimale représente en fait la précision, qui est de 3,141. Gardez trois après la virgule décimale.

 La question revient donc : que se passe-t-il si je saisis uniquement %.3f ?

À l'heure actuelle, la largeur est définie par défaut par le système et la précision est toujours de trois décimales.

7. Opérateurs et expressions courants en langage C

7.1 Opérateurs arithmétiques

+ — * / %

Addition, soustraction, multiplication et division, reste (opération modulo)

Il n’y a pas grand-chose à dire sur les trois premiers. Comprenez-le vous-même. Regardons d’abord la division.

#include<stdio.h>
int main(){
	printf("%d",6/2);
	printf("%d",6/4);
	
	return 0;
}

Jetons d’abord un coup d’œil à ce code. Quelle est la réponse ?

Avez-vous répondu correctement ?

Le premier est compréhensible, mais qu’en est-il du second ?

6 divisé par 4 n'est-il pas égal à 1,5 ? Pourquoi est-il redevenu 1 ?

En effet, lorsqu'un nombre entier est divisé par un nombre entier, le système effectue par défaut une opération d'arrondi, c'est-à-dire que toutes les parties décimales sont supprimées, ne laissant que la partie entière. Alors, que devrions-nous faire?

La première méthode consiste à forcer la conversion de type


Changement, qu'est-ce que la conversion de type forcée ?

(Nom du type) Nom de la variable ; il s'agit de convertir quelque chose qui n'est pas de ce type en ce type et de forcer les autres à le faire. Ahem, j'utiliserai ça à l'avenir, mais soyez prudent et j'en parlerai en détail plus tard.

La deuxième façon consiste à y ajouter un point décimal 

N'oubliez pas que puisque vous souhaitez afficher 1,5, un nombre à virgule flottante, le caractère de contrôle de format doit également changer.

Jetons un coup d'oeil à l'opération de reste. Tout d'abord, l'opération de reste ne peut être effectuée que sur des données entières, et d'autres opérations ne peuvent pas être effectuées. Certaines personnes ont également demandé. Ils ont appris presque tous les autres opérateurs, mais ils ne le font pas. Je ne connais pas du tout celui-ci. Eh bien, parlons-en en profondeur.

.1, en prenant le reste d’un nombre positif, regardons quelques exemples ;

5%3==2;

3%5==? Pour comprendre cela, nous devons connaître l’essence de l’opération de reste, c’est-à-dire diviser d’abord puis prendre le reste.

3%5==3/5==0. . . 3, le reste est 3 ;

.2, reste des nombres négatifs

En fait, l'essence est toujours la même. Pour que tout le monde puisse s'en souvenir plus facilement, le résumé suivant est fait.

***Le signe du résultat de l'opération est cohérent avec le signe du dividende.

***Lorsque le dividende est inférieur au diviseur, le résultat est égal au dividende. (Ne me dites pas que vous ne connaissez pas le dividende, enfin, en fait, je l'avais oublié, le dividende/diviseur) Maintenant vous comprenez, hahaha.

7.2 Opérateurs d'incrémentation et de décrémentation

Cela fait plus 1 moins 1 ;

Il y a deux situations ;

++i;

i++ ; Quelle est la différence entre les deux ? Sans plus tarder, entrons dans le code.

 n==3 et m==6, pourquoi ?

Parce que i dans n est utilisé d'abord puis ajouté par 1, tandis que dans m, i est d'abord ajouté par 1 puis multiplié par 3. Pensez-y.

7.3 Enfin, parlons de l'opérateur virgule et de l'opérateur parenthèses. L'opérateur parenthèses a la priorité la plus élevée et l'opérateur virgule a la priorité la plus basse. C'est la chose la plus simple dont il faut se souvenir.

**Les autres opérateurs sont relativement simples, vous pouvez les lire dans des livres et les comprendre.

*****La notion de priorité doit être clarifiée. Qui a la priorité la plus élevée ? Ce sera très important plus tard.

Ajouter un autre contenu : problème getchar de Scanf

getchar(); qu'est-ce que c'est ?

Sa fonction est d'appeler un caractère, généralement utilisé après scanf, car après la saisie de scanf, un caractère de retour chariot sera enfoncé manuellement, et le caractère de retour chariot est également stocké comme caractère à la fin du contenu saisi par scanf, mais dans certains cas, lorsque ce caractère de retour chariot affectera la question, nous devons l'extraire ;

#include<stdio.h>
int main(){
	int digit,i,letter,n,other;
	char ch;
	digit=letter=other=0;
	printf("请输入n:");
	scanf("%d",&n);
	getchar();
	printf("请输入%d个字符:",n);
	for(i=1;i<=n;i++)
	{
	ch=getchar();
	if(ch>=48 && ch<=57)
	digit++;
	else if((ch>=65 && ch<=80)||(ch>=97 && ch<=122))
	letter++;
	else
	other++;}
	printf("digit=%d,letter=%d,other=%d",digit,letter,other);
	return 0;
}

Vous pouvez vous référer à ce programme.

Il existe d'autres fonctions. Le sens littéral de getchar est de saisir un caractère. L'utilisation est presque la suivante. J'en parlerai en profondeur plus tard.

Merci d'avoir regardé et appris, et je vous souhaite de mieux en mieux dans vos études.

Je suppose que tu aimes

Origine blog.csdn.net/m0_63309778/article/details/121590535
conseillé
Classement