La langue C commence à 0
Apr 03, 2025 pm 08:24 PMIl peut être un peu difficile de commencer avec l'apprentissage des langues C, mais après avoir ma?trisé la bonne méthode, vous ma?triserez rapidement les bases et les ma?triserez progressivement. Ce guide vous guidera étape par étape pour apprendre les concepts de base de la langue C, des bases aux sujets avancés.
Table des matières
- Bases et types de données de la langue C
- Entrée utilisateur
- Abréviation de l'expression conditionnelle
- Déclaration de commutation
- C TAILLE DE LANGUE C
- Boucles imbriquées
- C fonctions de langue C
- Structure
- aiguille
Bases et types de données de la langue C
Le programme C suit une structure standard et définit les variables à l'aide de plusieurs types de données. La structure du programme de base est la suivante:
<code class="c">#include <stdio.h> int main() { printf("hello, world!"); return 0; }</stdio.h></code>
Concept de base:
- Type de données:
-
int
: entier (par exempleint x = 10;
). -
float
etdouble
: numéros de point flottants à précision et double précision (par exemple,float pi = 3.14;
). -
char
: un seul caractère ou un code ASCII (par exemple,char letter = 'a';
). -
bool
: valeur booléenne (true
oufalse
, il doit inclure le fichier d'en-tête<stdbool.h></stdbool.h>
).
-
<code class="c">// 數(shù)據(jù)類型示例: int a = 40; // 整數(shù)(4字節(jié)) short int b = 32767; // 短整型(2字節(jié),范圍:-32768到32767) unsigned int c = 4294967295; // 無符號整數(shù)(4字節(jié),范圍:0到4294967295) float d = 9.81; // 單精度浮點(diǎn)數(shù)(4字節(jié),精度6-7位,格式:%f) double e = 3.141592653589793; // 雙精度浮點(diǎn)數(shù)(8字節(jié),精度15-16位,格式:%lf) bool f = true; // 布爾值(1字節(jié),true/false,格式:%d,其中1=true,0=false) char g = 'e'; // 字符(1字節(jié),可用于字符或數(shù)字) char h = 100; // 字符(1字節(jié),格式:%d表示數(shù)字,%c表示ASCII碼,范圍:-128到127) char name[] = "example"; // 字符串// 變量聲明和初始化int age; // 聲明age = 5; // 初始化char language = 'c'; // 聲明和初始化// 顯示變量printf("你%d歲了", age); // 整數(shù)printf("你好%s", name); // 字符串printf("你現(xiàn)在正在學(xué)習(xí)%c", language); // 字符// 格式說明符:%d -> int, %s -> string, %c -> char, %f -> float, %.(numberofdecimals)f -> 帶指定小數(shù)位的浮點(diǎn)數(shù)</code>
- Opérateur:
<code class="c">/* = 加法- = 減法* = 乘法/ = 除法% = 取模= 自增1 -- = 自減1 */ // 結(jié)果需要存儲在與結(jié)果類型匹配的變量中// 數(shù)據(jù)類型轉(zhuǎn)換: int x = 5; int y = 2; float z = 5/2; // 錯(cuò)誤結(jié)果,因?yàn)閤和y是整數(shù)float z = 5 / (float)2; // 正確方法// 單變量自增: int x = 4; x = 2; // x = 6 x -= 2; // x = 4 x *= 2; // x = 8 x /= 2; // x = 4</code>
Entrée utilisateur
Dans VS Code, vous devez passer de la fenêtre "Output" à "Terminal" pour exécuter le programme car le terminal re?oit l'entrée utilisateur.
<code class="c">int age; char name[25]; // 用戶輸入整數(shù): printf("你幾歲了?\n"); // 顯示提示信息scanf("%d", &age); // 指定數(shù)據(jù)類型和變量名printf("你%d歲了", age); // 用戶輸入字符串(字符數(shù)組): printf("你的名字是?"); scanf("%s", name); printf("你好%s,你好嗎?", name); /* scanf() 不讀取空格,如果需要輸入姓名和姓氏,可以使用fgets函數(shù):結(jié)構(gòu): fgets(變量名, 大小, stdin) */ fgets(name, 25, stdin); // fgets 也包含結(jié)尾的'\n'</code>
La langue C est sensible à la casse Si des valeurs de capitalisation sont requises, vous pouvez modifier l'entrée utilisateur pour obtenir la bonne valeur. Par exemple:
<code class="c">#include <ctype.h> // 我們要求用戶輸入大寫F或大寫C char unit; printf("溫度是攝氏度(c)還是華氏度(f)?"); scanf(" %c", &unit); // 注意%c前的空格,用于去除前導(dǎo)空格// 修改用戶輸入: unit = toupper(unit); // 現(xiàn)在,即使用戶輸入小寫c或f,我們也保存大寫值到unit if(unit == 'C'){ printf("溫度目前是攝氏度。"); } else if (unit == 'F'){ printf("溫度目前是華氏度。"); } else{ printf("%c 不是正確的值", unit); }</ctype.h></code>
Abréviation de l'expression conditionnelle
Le langage C utilise les opérateurs ternaires pour simplifier les instructions conditionnelles IF-Else:
<code class="c">int max = (a > b) ? a : b;</code>
équivalent à:
<code class="c">if (a > b) { max = a; } else { max = b; }</code>
Il s'agit d'un moyen simple et efficace d'écrire une logique conditionnelle simple.
Déclaration de commutation
L'instruction Switch permet le traitement de plusieurs valeurs possibles d'une variable:
<code class="c">char grade = 'a'; // 聲明變量'grade'并初始化為'a' switch (grade) { // 開始switch語句檢查'grade'的值case 'a': // 如果'grade'是'a' printf("優(yōu)秀!\n"); // 打印"優(yōu)秀!" break; // 退出switch語句case 'b': // 如果'grade'是'b' printf("良好!\n"); // 打印"良好!" break; // 退出switch語句default: // 如果'grade'不是'a'或'b' printf("下次加油。\n"); // 打印"下次加油。" }</code>
Incluez toujours la gestion de cas par défaut des valeurs inattendues.
C TAILLE DE LANGUE C
Un tableau est une collection de variables du même type stockées en mémoire dans l'ordre. Par exemple:
<code class="c">int numbers[5] = {10, 20, 30, 40, 50};</code>
Concept de base:
- éléments d'accès: utilisez l'index du tableau, à partir de 0:
<code class="c">printf("%d", numbers[0]); // 打印10</code>
- Tableau bidimensionnel: similaire à la matrice ou à la grille:
<code class="c">int matrix[2][3] = { // 聲明一個(gè)2行3列的二維數(shù)組'matrix' {1, 2, 3}, // 初始化第一行{4, 5, 6} // 初始化第二行};</code>
- Tableau de cha?nes: les tableaux peuvent également stocker les cha?nes:
<code class="c">// 聲明一個(gè)字符串?dāng)?shù)組'cars',每個(gè)字符串最大長度為10個(gè)字符char cars[][10] = {"bmw", "tesla", "toyota"};</code>
Les tableaux sont largement utilisés pour traiter les listes de données, les grilles ou les tables.
Boucles imbriquées
Une boucle imbriquée est lorsqu'une boucle contient une autre boucle, qui est généralement utilisée pour gérer les grilles ou les modèles répétitifs:
<code class="c">for (int i = 0; i </code>
C'est idéal pour gérer les tableaux multidimensionnels ou créer une sortie complexe.
C fonctions de langue C
Les fonctions permettent la réutilisation du code. Par exemple:
<code class="c">void greet() { printf("hello, world!\n"); printf("歡迎學(xué)習(xí)C語言編程。\n"); printf("讓我們開始編碼吧!\n"); } int main() { greet(); return 0; }</code>
Les fonctions peuvent accepter des paramètres pour les rendre plus flexibles:
<code class="c">void greet(char name[]) { printf("你好,%s!\n", name); } int main() { greet("Alice"); return 0; }</code>
L'utilisation de fonctions aide à garder le code organisé et réutilisable.
Structure
La structure ( struct
) combine les variables pertinentes sous un seul nom:
<code class="c">// 定義一個(gè)名為'player'的結(jié)構(gòu)體,包含兩個(gè)成員struct player { char name[50]; // 字符數(shù)組'name'存儲玩家姓名(最多50個(gè)字符) int score; // 整數(shù)'score'存儲玩家分?jǐn)?shù)}; // 創(chuàng)建一個(gè)'player'結(jié)構(gòu)體的實(shí)例并初始化struct player player1 = {"Alice", 100}; // 初始化'player1',姓名為"Alice",分?jǐn)?shù)為100 // 打印玩家姓名和分?jǐn)?shù)printf("姓名:%s,分?jǐn)?shù):%d", player1.name, player1.score); // 輸出:姓名:Alice,分?jǐn)?shù):100</code>
Les structures sont souvent utilisées pour créer des modèles de données complexes, tels que des enregistrements ou des objets.
aiguille
Les pointeurs sont des variables qui stockent les adresses de mémoire, qui peuvent réaliser un traitement efficace des données:
<code class="c">int value = 42; // 聲明一個(gè)整數(shù)變量'value'并初始化為42 int *ptr = &value; // 聲明一個(gè)指向整數(shù)的指針變量'ptr'并將其初始化為'value'的地址printf("值:%d,地址:%p", *ptr, ptr); // 打印'ptr'指向的值和'ptr'存儲的地址</code>
Il est crucial de cibler l'allocation dynamique de la mémoire et les opérations sous-jacentes dans le langage C.
Apprenez la langue C et accumulez ces informations pratiques. La ma?trise de ces concepts mettra une base solide pour votre programmation C. Prenez ce guide comme référence et pratiquez régulièrement et vous passerez bient?t d'un débutant à un expert en langue C. Ayez une programmation heureuse!
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Outils d'IA chauds

Undress AI Tool
Images de déshabillage gratuites

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Clothoff.io
Dissolvant de vêtements AI

Video Face Swap
échangez les visages dans n'importe quelle vidéo sans effort grace à notre outil d'échange de visage AI entièrement gratuit?!

Article chaud

Outils chauds

Bloc-notes++7.3.1
éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Sujets chauds

Au fur et à mesure que les conditions du marché accélèrent, de plus en plus d'investisseurs intelligents ont commencé à augmenter tranquillement leurs positions dans le cercle des devises. Beaucoup de gens se demandent ce qui les fait prendre de manière décisive lorsque la plupart des gens attendent et voient? Cet article analysera les tendances actuelles à travers des données sur la cha?ne pour aider les lecteurs à comprendre la logique des fonds intelligents, afin de mieux saisir la prochaine série de possibilités de croissance potentielle de la richesse.

Récemment, Bitcoin a frappé un nouveau sommet, Dogecoin a inauguré un fort rebond et le marché était chaud. Ensuite, nous analyserons les moteurs du marché et les aspects techniques pour déterminer si Ethereum a toujours des opportunités de suivre la montée.

Le modèle dans le champ de la cha?ne publique montre une tendance de "un super, beaucoup de forts et une centaine de fleurs fleurissant". Ethereum mène toujours avec ses douves écologiques, tandis que Solana, Avalanche et d'autres sont difficiles à affronter les performances. Pendant ce temps, Polkadot, Cosmos, qui se concentre sur l'interopérabilité, et ChainLink, qui est une infrastructure critique, forment une image future de plusieurs cha?nes coexistant. Pour les utilisateurs et les développeurs, le choix de la plate-forme n'est plus un seul choix, mais nécessite un compromis entre les performances, le co?t, la sécurité et la maturité écologique basée sur des besoins spécifiques.

Le cercle des devises semble avoir un seuil bas, mais en fait, il cache de nombreux termes et logique complexe. De nombreux novices "se précipitent sur le marché" dans la confusion et finissent par perdre de l'argent. Cet article donnera une explication complète des termes communs dans le cercle des devises, la logique opérationnelle des fabricants d'argent réel et les stratégies pratiques de contr?le des risques pour aider les lecteurs à clarifier leurs idées et à réduire les risques d'investissement.

La mise à niveau de Fork Hard Fork de Cardano a réussi à transformer Cardano d'un réseau de transfert de valeur vers une plate-forme de contrat intelligent entièrement fonctionnel en introduisant la plate-forme de contrat intelligent Plutus. 1. Plutus est basé sur le langage Haskell, avec des fonctionnalités puissantes, une sécurité améliorée et un modèle de co?t prévisible; 2. Après la mise à niveau, le déploiement DAPPS est accéléré, la communauté des développeurs est élargie et les écosystèmes Defi et NFT se développent rapidement; 3. En 2025, l'écosystème de Cardano sera plus mature et diversifié. Combinée à l'amélioration de l'évolutivité à l'ère Basho, à l'amélioration de l'interopérabilité transversale, à l'évolution de la gouvernance décentralisée à l'ère Voltaire et à la promotion de l'adoption générale par les applications au niveau de l'entreprise, Cardano a

Les stablecoins sont des actifs cryptographiques qui maintiennent la stabilité des prix en ancrant les monnaies fiduciaires telles que le dollar américain. Ils sont principalement divisés en trois catégories: garantie de monnaie fiduciaire, garantie des actifs cryptographiques et stablecoins algorithmiques. 1. L'USDT est émis par Tether et est le stablecoin avec la plus grande valeur marchande et la liquidité la plus élevée. 2. USDC est publié par la Center Alliance lancée par Circle and Coinbase, et est connue pour sa transparence et sa conformité. 3. Dai est généré par Makerdao par une sur-collatéralisation des actifs cryptographiques et est la devise centrale dans le champ Defi. 4. Busd a été lancé en partenariat avec Paxos et est réglementé par les états-Unis mais a été interrompu. 5. TUSD atteint une vérification élevée de réserve de transparence via des comptes d'entiercement tiers. Les utilisateurs peuvent utiliser des échanges centralisés tels que Binance, Ouyi et Huobi

Les 20 principaux actifs de cryptographie les plus prometteurs en 2025 comprennent BTC, ETH, SOL, etc., couvrant principalement plusieurs pistes telles que les cha?nes publiques, la couche 2, l'IA, le défi et les jeux. 1.BTC continue de diriger le marché avec ses propriétés numériques en métal jaune et sa vulgarisation des ETF; 2.eth consolide l'écosystème en raison de son statut et de sa mise à niveau des plates-formes de contrat intelligentes; 3.Sol se démarque avec des cha?nes publiques et des communautés de développeurs hautes performances; 4.Link est le leader d'Oracle Connectation de données réelles; 5.RNDR construit les besoins décentralisés du service de réseau GPU AI; 6.IMX se concentre sur les jeux Web3 pour fournir un environnement sans gaz zéro; 7.Reb mène avec la technologie de la couche 2 mature et l'énorme écosystème Defi; 8.Matic est devenu la couche de valeur d'Ethereum à travers l'évolution multi-cha?ne

La différence de base entre l'USDC, le DAI et le TUSD réside dans le mécanisme d'émission, les actifs collatéraux et les caractéristiques du risque. 1. L'USDC est un stablecoin centralisé émis par Circle et est garanti par des obligations de trésorerie en espèces et à court terme. Ses avantages sont la conformité et les liquidités transparentes, fortes et une stabilité élevée, mais il existe un risque d'examen centralisé et de défaillance ponctuelle; 2. Dai est une stablecoin décentralisée, générée par le protocole Makerdao, et la garantie est un atout crypto. Il présente les avantages de l'anti-censure, de la transparence sur la cha?ne et sans autorisation, mais il fait également face à des risques systémiques, à la dépendance à l'égard des actifs centralisés et des problèmes de complexité; 3. TUSD est un stablecoin centralisé, mettant l'accent sur la preuve de réserve en ligne en temps réel, fournissant une vérification de transparence de fréquence plus élevée, mais a une petite part de marché et une faible liquidité. Les trois sont des types de garantie et une décentralisation
