文档库 最新最全的文档下载
当前位置:文档库 › ALKALINE DIGESTION FOR HEXAVALENT CHROMIUM(EPA 3060a)

ALKALINE DIGESTION FOR HEXAVALENT CHROMIUM(EPA 3060a)

ALKALINE DIGESTION FOR HEXAVALENT CHROMIUM(EPA 3060a)
ALKALINE DIGESTION FOR HEXAVALENT CHROMIUM(EPA 3060a)

CD-ROM 3060A-1Revision 1

December 1996

METHOD 3060A ALKALINE DIGESTION FOR HEXAVALENT CHROMIUM

1.0SCOPE AND APPLICATION

1.1Any reference in this method to “Method 3060" refers to this version of that method,and does not refer to previously published versions (e.g., in the Second Edition of this manual).When published as a new method to SW-846, a method’s number does not include a letter suffix.Each time a method is revised and made a part of SW-846 update, it receives a suffix. However,a method reference found within the text of SW-846 methods always refers to the latest version of that method published in SW-846, even if the method number at that location does not include the appropriate letter suffix.

1.2Method 3060 is an alkaline digestion procedure for extracting hexavalent chromium

[Cr(VI)] from soluble, adsorbed, and precipitated forms of chromium compounds in soils, sludges,sediments, and similar waste materials. To quantify total Cr(VI) in a solid matrix, three criteria must be satisfied: (1) the extracting solution must solubilize all forms of Cr(VI), (2) the conditions of the extraction must not induce reduction of native Cr(VI) to Cr(III), and (3) the method must not cause oxidation of native Cr(III) contained in the sample to Cr(VI). Method 3060 meets these criteria for a wide spectrum of solid matrices. Under the alkaline conditions of the extraction, minimal reduction of Cr(VI) or oxidation of native Cr(III) occurs. The addition of Mg in a phosphate buffer to the 2+alkaline solution has been shown to suppress oxidation, if observed. The accuracy of the extraction procedure is assessed using spike recovery data for soluble and insoluble forms of Cr(VI) (e.g.,K Cr O and PbCrO ), coupled with measurement of ancillary soil properties, indicative of the 227 4potential for the soil to maintain a Cr(VI) spike during digestion, such as oxidation reduction potential (ORP), pH, organic matter content, ferrous iron, and sulfides. Recovery of an insoluble Cr(VI) spike can be used to assess the first two criteria, and method-induced oxidation is usually not observed except in soils high in Mn and amended with soluble Cr(III) salts or freshly precipitated Cr(OH).

31.3The quantification of Cr(VI) in Method 3060 digests should be performed using a suitable technique with appropriate accuracy and precision, for example Method 7196(colorimetrically by UV-VIS spectrophotometry) or Method 7199 (colorimetrically by ion chromatography (IC)). Analytical techniques such as IC with inductively coupled plasma - mass spectrometric (ICP-MS) detection, high performance liquid chromatography (HPLC) with ICP-MS detection, capillary electrophoresis (CE) with ICP-MS detection, etc. may be utilized once performance effectiveness has been validated.

2.0SUMMARY OF METHOD

2.1This method uses an alkaline digestion to solubilize both water-insoluble (with the exception of partial solubility of barium chromate in some soil matrices, see Reference 10.9) and water soluble Cr(VI) compounds in solid waste samples. The pH of the digestate must be carefully adjusted during the digestion procedure. Failure to meet the pH specifications will necessitate redigestion of the samples.

2.2The sample is digested using 0.28M Na CO /0.5M NaOH solution and heating at 90-2395E C for 60 minutes to dissolve the Cr(VI) and stabilize it against reduction to Cr(III).

CD-ROM

3060A-2Revision 1

December 19962.3The Cr(VI) reaction with diphenylcarbazide is the most common and reliable method for analysis of Cr(VI) solubilized in the alkaline digestate. The use of diphenylcarbazide has been well established in the colorimetric procedure (Method 7196), in rapid-test field kits, and in the ion chromatographic method for Cr(VI) (Method 7199). It is highly selective for Cr(VI) and few interferences are encountered when it is used on alkaline digestates.

2.4For additional information on health and safety issues relating to chromium, refer to References 10.7 and 10.10.

3.0INTERFERENCES

3.1When analyzing a sample digest for total Cr(VI), it is appropriate to determine the reducing/oxidizing tendency of each sample matrix. This can be accomplished by characterization of each sample for additional analytical parameters, such as pH (Method 9045), ferrous iron (ASTM Method D3872-86), sulfides (Method 9030), and Oxidation Reduction Potential (ORP) (ASTM Method

D 1498-93 - aqueous samples). Method 9045 (Section 7.2 of Method 9045) is referenced as the preparatory method for soil samples. The ORP and temperature probes are inserted directly into the soil slurry. The displayed ORP value is allowed to equilibrate and the resulting measurement is recorded. Other indirect indicators of reducing/oxidizing tendency include Total Organic Carbon (TOC), Chemical Oxygen Demand (COD), and Biological Oxygen Demand (BOD). Analysis of these additional parameters establishes the tendency of Cr(VI) to exist or not exist in the unspiked sample(s) and assists in the interpretation of QC data for matrix spike recoveries outside conventionally accepted criteria for total metals.

3.2Certain substances, not typically found in the alkaline digests of soils, may interfere in the analytical methods for Cr(VI) following alkaline extraction if the concentrations of these interfering substances are high and the Cr(VI) concentration is low. Refer to Methods 7196 and 7199 for a discussion of the specific agents that may interfere with Cr(VI) quantification. Analytical techniques that reduce bias caused by co-extracted matrix components may be applicable in correcting these biases after validation of their performance effectiveness.

3.3For waste materials or soils containing soluble Cr(III) concentrations greater than four times the laboratory Cr(VI) reporting limit, Cr(VI) results obtained using this method may be biased high due to method-induced oxidation. The addition of Mg in a phosphate buffer to the alkaline 2+extraction solution has been shown to suppress this oxidation. If an analytical method for Cr(VI) is used that can correct for possible method induced oxidation/reduction, then the Mg addition is 2+optional. The presence of soluble Cr(III) can be approximated by extracting the sample with deionized water (ASTM methods D4646-87, D5233-92, or D3987-85) and analyzing the resultant leachate for both Cr(VI) and total Cr. The difference between the two values approximates soluble Cr(III).

4.0APPARATUS AND MATERIALS

4.1

Digestion vessel: borosilicate glass or quartz with a volume of 250 mL.4.2

Graduated Cylinder: 100-mL or equivalent.4.3Volumetric Flasks: Class A glassware, 1000-mL and 100-mL, with stoppers or

equivalent.

CD-ROM 3060A-3Revision 1

December 1996

4.4

Vacuum Filtration Apparatus.4.5Filter membranes (0.45 μm). Preferably cellulosic or polycarbonate membranes.

When vacuum filtration is performed, operation should be performed with recognition

of the filter membrane breakthrough pressure.

4.6Heating Device - capable of maintaining the digestion solution at 90-95E C with

continuous auto stirring capability or equivalent.

4.7Volumetric pipettes: Class A glassware, assorted sizes, as necessary.

4.8Calibrated pH meter.

4.9Calibrated balance.

4.10Temperature measurement device (with NIST traceable calibration) capable of

measuring up to 100E C (e.g. thermometer, thermistor, IR sensor, etc.).

4.11

An automated continuous stirring device (e.g. magnetic stirrer, motorized stirring rod,

etc.), one for each digestion being performed.5.0REAGENTS

5.1Nitric acid: 5.0 M HNO , analytical reagent grade or spectrograde quality. Store at 320-25E C in the dark. Do not use concentrated HNO to make up 5.0 M solution if it has a yellow 3tinge; this is indicative of photoreduction of NO to NO , a reducing agent for Cr(VI).

3 2-5.2Sodium carbonate: Na CO , anhydrous, analytical reagent grade. Store at 20-25E C 23in a tightly sealed container.

5.3Sodium hydroxide: NaOH, analytical reagent grade. Store at 20-25E C in a tightly sealed container.

5.4Magnesium Chloride: MgCl (anhydrous), analytical reagent grade. A mass of 4002mg MgCl is approximately equivalent to 100 mg Mg . Store at 20-25E C in a tightly sealed 22+container.

5.5Phosphate Buffer:

5.5.1

K HPO : analytical reagent grade.245.5.2KH PO : analytical reagent grade.

245.5.30.5M K HPO /0.5M KH PO buffer at pH 7: Dissolve 87.09 K HPO and 68.04

24 24 24g KH PO into 700 mL of reagent water. Transfer to a 1L volumetric flask and dilute to 24volume.

CD-ROM 3060A-4Revision 1

December 1996

5.6Lead Chromate: PbCrO , analytical reagent grade. The insoluble matrix spike is 4prepared by adding 10-20 mg of PbCrO to a separate sample aliquot. Store under dry conditions 4at 20-25E C in a tightly sealed container.

5.7Digestion solution: Dissolve 20.0 ± 0.05 g NaOH and 30.0 ± 0.05 g Na CO in 23reagent water in a one-liter volumetric flask and dilute to the mark. Store the solution in a tightly capped polyethylene bottle at 20-25E C and prepare fresh monthly. The pH of the digestion solution must be checked before using. The pH must be 11.5 or greater, if not, discard.

5.8Potassium dichromate, K Cr O , spiking solution (1000 mg/L Cr(VI)): Dissolve 2.829227g of dried (105E C) K Cr O in reagent water in a one-liter volumetric flask and dilute to the mark.227Alternatively, a 1000 mg/L Cr(VI) certified primary standard solution can be used (Fisher AAS standard or equivalent). Store at 20-25E C in a tightly sealed container for use up to six months.

5.8.1Matrix spiking solution (100 mg/L Cr(VI)): Add 10.0 mL of the 1000 mg

Cr(VI)/L made from K Cr O spiking solution (Section 5.8) to a 100 mL volumetric flask and 227dilute to volume with reagent water. Mix well.

5.9Reagent Water - Reagent water will be free of interferences. Refer to Chapter One for a definition of reagent water.

6.0.SAMPLE COLLECTION, PRESERVATION, AND HANDLING

6.1Samples must have been collected using a sampling plan that addresses the considerations discussed in Chapter Nine of this manual.

6.2Samples should be collected using devices and placed in containers that do not contain stainless steel (e.g., plastic or glass).

6.3Samples should be stored field-moist at 4 ± 2E C until analysis.

6.4Hexavalent chromium has been shown to be quantitatively stable in field-moist soil samples for 30 days from sample collection. In addition, Cr(VI) has also been shown to be stable in the alkaline digestate for up to 168 hours after extraction from soil.

6.5Hexavalent chromium solutions or waste material that are generated should be disposed of properly. One approach is to treat all Cr(VI) waste materials with ascorbic acid or other reducing agent to reduce the Cr(VI) to Cr(III). For additional information on health and safety issues relating to chromium, the user is referred to References 10.7 and 10.10.

7.0PROCEDURE

7.1Adjust the temperature setting of each heating device used in the alkaline digestion by preparing and monitoring a temperature blank [a 250 mL vessel filled with 50 mLs digestion solution (Section 5.7)]. Maintain a digestion solution temperature of 90-95E C as measured with a NIST-traceable thermometer or equivalent.

7.2Place 2.5 ± 0.10 g of the field-moist sample into a clean and labeled 250 mL digestion vessel. The sample should have been mixed thoroughly before the aliquot is removed.

CD-ROM 3060A-5Revision 1

December 1996

For the specific sample aliquot that is being spiked (Section 8.5), the spike material should be added directly to the sample aliquot at this point. (Percent solids determination, U.S. EPA CLP SOW for Organic Analysis, OLM03.1, 8/94 Rev.) should be performed on a separate aliquot in order to calculate the final result on a dry-weight basis).

7.3Add 50 mL ± 1 mL of digestion solution (Section 5.7) to each sample using a graduated cylinder, and also add approximately 400 mg of MgCl (Section 5.4) and 0.5 mL of 1.0M 2phosphate buffer (Section 5.5.3). For analytical techniques that can correct for oxidation/reduction of Cr, the addition of Mg is optional. Cover all samples with watch glasses.

2+7.4Stir the samples continuously (unheated) for at least five minutes using an appropriate stirring device.

7.5 Heat the samples to 90-95E C, then maintain the samples at 90-95E C for at least 60minutes with continuous stirring.

7.6Gradually cool, with continued agitation, each solution to room temperature. Transfer the contents quantitatively to the filtration apparatus; rinsing the digestion vessel with 3 successive portions of reagent water. Transfer the rinsates to the filtration apparatus. Filter through a 0.45μm membrane filter. Rinse the inside of the filter flask and filter pad with reagent water and transfer the filtrate and the rinses to a clean 250-mL vessel.NOTE: The remaining solids and filter paper resulting from filtration of the matrix spike in Section 7.6 should be saved for possible use in assessing low Cr(VI) matrix spike recoveries.See Section 8.5.2. for additional details. Store the filtered solid at 4 ± 2E C.

7.7Place an appropriate stirring device into the sample digest beaker, place the vessel on a stirrer, and, with constant stirring, slowly add 5.0 M nitric acid solution to the beaker dropwise.Adjust the pH of the solution to 7.5 ± 0.5 if the sample is to be analyzed using Method 7196 (adjust the pH accordingly if an alternate analytical method is to be used; i.e. 9.0 ± 0.5 if Method 7199 is to be used) and monitor the pH with a pH meter. If the pH of the digest should deviate from the desired range, discard the solution and redigest. If overshooting the desired pH range occurs repeatedly,prepare diluted nitric acid solution and repeat digestion procedure. If a flocculent precipitate should form, the sample should be filtered through a 0.45 μm membrane filter. If the filter becomes clogged using the 0.45 μm filter paper, a larger size filter paper (Whatman GFB or GFF) may be used to prefilter the samples.CAUTION: CO will be evolved. This step should be performed in a fume hood.

27.8Remove the stirring device and rinse, collecting the rinsate in the beaker. Transfer quantitatively the contents of the vessel to a 100 mL volumetric flask and adjust the sample volume to 100 mL (to the mark for the volumetric flask) with reagent water. Mix well.

7.9The sample digestates are now ready to be analyzed. Determine the Cr(VI)concentration in mg/kg by a suitable technique with appropriate accuracy and precision, for example Method 7196 (colorimetrically by UV-VIS spectrophotometry) or Method 7199 (colorimetrically by ion chromatography (IC)). Another analytical technique such as IC with inductively coupled plasma -mass spectrometric (ICP-MS) detection, high performance liquid chromatography (HPLC) with ICP-

MS detection, capillary electrophoresis (CE) with ICP-MS detection, etc. may be utilized once performance effectiveness has been validated.

7.10 CALCULATIONS

7.10.1Sample Concentration

A x D x E

Concentration = ------------

B x C

where:A=Concentration observed in the digest (μg/mL)

B=Initial moist sample weight (g)

C=% Solids/100

D=Dilution Factor

E=Final digest volume (mL)

7.10.2Relative Percent Difference

(S - D)

RPD =-------------

[(S + D)/2]

where:S=Initial sample result

D=Duplicate sample result

7.10.3Spike Recovery

Percent Recovery(SSR - SR)x 100

=

SA

where:SSR=Spike sample result

SR=Sample (unspiked) result

SA=Spike added

8.0QUALITY CONTROL

8.1The following Quality Control (QC) analyses must be performed per digestion batch as discussed in Chapter One.

8.2 A preparation blank must be prepared and analyzed with each digestion batch, as discussed in Chapter One and detected Cr(VI) concentrations must be less than the method detection limit or one-tenth the regulatory limit or action level, whichever is greater or the entire batch must be redigested.

8.3Laboratory Control Sample (LCS): As an additional determination of method performance, utilize the matrix spike solution prepared in Section 5.8.1 or the solid matrix spiking agent PbCrO (Section 5.6) to spike into 50 mL of digestion solution (Section 5.7). Alternatively, the 4

use of a certified solid reference material (if available) is recommended. Recovery must be within the certified acceptance range or a recovery range of 80% to 120% or the sample batch must be reanalyzed.

8.4 A separately prepared duplicate soil sample must be analyzed at a frequency of one per batch as discussed in Chapter One. Duplicate samples must have a Relative Percent Difference (RPD) of < 20%, if both the original and the duplicate are > four times the laboratory reporting limit.

A control limit of ± the laboratory reporting limit is used when either the original or the duplicate sample is < four times the laboratory reporting limit.

8.5Both soluble and insoluble pre-digestion matrix spikes must be analyzed at a frequency of one each per batch of < 20 field samples. The soluble matrix spike sample is spiked with 1.0 mL of the spiking solution prepared in Section 5.8.1 (equivalent to 40 mg Cr(VI)/Kg)) or at twice the sample concentration, whichever is greater. The insoluble matrix spike is prepared by

adding 10-20 mg of PbCrO (Section 5.6) to a separate sample aliquot. It is used to evaluate the

4

dissolution during the digestion process. Both matrix spikes are then carried through the digestion process described in Section 7.0. More frequent matrix spikes must be analyzed if the soil characteristics within the analytical batch appear to have significant variability based on visual observation. An acceptance range for matrix spike recoveries is 75-125%. If the matrix spike recoveries are not within these recovery limits, the entire batch must be rehomogenized/redigested/reanalyzed. If upon reanalysis, the matrix spike is not within the recovery limits, but the LCS is within criteria specified in Section 8.3, information such as that specified on Figures 1 and 2 and in Section 3.1 should be carefully evaluated . The Cr(VI) data may be valid for use despite the perceived "QC failure." The information shown on Figure 1 and discussed below is provided to interpret ancillary parameter data in conjunction with data on spike recoveries.

8.5.1 First measure the pH (Method 9045) and Oxidation Reduction Potential (ORP)

(ASTM Method D 1498-93 - aqueous samples, Method 9045 preparatory for soil samples), in the field if possible. If not possible, the measurements are to be made in the laboratory prior to the determination of the spike recovery data. When and where the measurements are taken must be noted by the analyst. Adjust the ORP measurement based on reference electrode correction factor to yield Eh values. The pH and Eh values should be plotted on Figure 2 in order to give an initial indication of the sample’s reducing/oxidizing nature. Upon completion of the analysis of the analytical batch, the LCS should be evaluated. If the LCS is not within 80 - 120% recovery or the certified acceptance range, then the entire analytical batch (plus the QC samples) should be redigested and reanalyzed. If the LCS was within acceptance criteria and the pre-digestion matrix spike recoveries for Cr(VI) were less than the acceptance range minimum (75%), this indicates that the soil samples reduced Cr(VI)

(e.g., anoxic sediments), and no measurable native Cr(VI) existed in the unspiked sample

(assuming the criteria in Section 8.3 are met). Such a result indicates that the combined and

2+ interacting influences of ORP, pH and reducing agents (e.g., organic acids, Fe and sulfides) caused reduction of Cr(VI) spikes. Characterize each matrix spike sample for additional analytical parameters, such as ferrous iron (ASTM Method D3872-86), and sulfides (Method 9030). Laboratory measurements of pH and ORP should also be performed to confirm the field measurements. Other indirect indicators of reducing/oxidizing tendency include Total Organic Carbon (TOC), Chemical Oxygen Demand (COD), and Biological Oxygen Demand (BOD). Analysis of these additional parameters assists in evaluating the tendency of Cr(VI)

to exist or not exist in the unspiked sample(s) and assists in the interpretation of QC data for matrix spike recoveries outside conventionally accepted criteria for total metals.

A value of Eh-pH below the bold diagonal line on Fig. 2 indicates a reducing soil for

Cr(VI). The downward slope to the right indicates that the Eh value, at which Cr(VI) is expected to be reduced, decreases with increasing pH. The solubility and quantity of organic constituents influence reduction of Cr(VI). The presence of H S or other strong odors

2

indicates a reducing environment for Cr(VI). In general, acidic conditions accelerate reduction of Cr(VI) in soils, and alkaline conditions tend to stabilize Cr(VI) against reduction.

If pre-digestion matrix spike recovery is not within the recovery limits, the reductive nature of the sample must be documented. This is done by plotting the Eh and pH data on the Eh-pH diagram (Fig. 2) to see if spike recovery is or is not expected in the soil. If the data point falls below the Cr(VI)-Cr(III) line on the diagram, then the data is not qualified or rejected.

The sample is reducing for Cr(VI). If the data point falls above the line, then the sample is capable of supporting Cr(VI). In this case, technical error may be responsible for the poor spike recovery, and the extraction should be repeated, along with the Eh and pH measurements. If re-extraction results in a poor spike recovery again, then the data is qualified. At this point, review of other soil characteristics, such as levels of pH, Eh, TOC, sulfides, Fe(II), is appropriate to understand why poor spike recovery occurred. This extra review of these soil properties is only necessary if the unspiked sample contains detectable Cr(VI).

8.5.2 If a low or zero percent pre-digestion matrix spike recovery is obtained, an

alternate approach can be used to determine the potential contribution of the sample matrix to Cr(VI) reduction. This approach consists of performing a mass balance, whereby total chromium is analyzed (Method 3052) for two samples: (1) a separate unspiked aliquot of the sample previously used for spiking, and (2) the digested solids remaining after the alkaline digestion and filtration of the matrix spike (i.e., the filtered solids from the matrix spike in Section 7.6).

The difference between the total chromium measurements should be approximately equal to the amount of the spike added to the matrix spike. If the LCS (Section 8.3) met the acceptance criteria and the Cr(VI) spike is accounted for in the filtered solids as total chromium, it is likely that the reduction of the Cr(VI) to insoluble Cr(III) resulted from the reducing matrix of the original sample subjected to Cr(VI) spiking.

8.6 A post-digestion Cr(VI) matrix spike must be analyzed per batch as discussed in Chapter One. The post-digestion matrix spike concentration should be equivalent to 40 mg/kg or twice the sample concentration observed in the unspiked aliquot of the test sample, whichever is greater.

8.6.1 Dilute the sample aliquot to a minimum extent, if necessary, so that the

absorbance reading for both the unspiked sample aliquot and spiked aliquot are within the initial calibration curve.

8.6.2 A guideline for the post-digestion matrix spike recovery is 85-115%. If not

achieved, consider the corrective actions/guidance on data use specified in Section 8.5 or the Method of Standard Additions (MSA) as specified in Section 8.0 of Method 7000. If the MSA technique is applied post digestion and no spike is observed from the MSA, these results indicate that the matrix is incompatible with Cr(VI) and no further effort on the part of

the laboratory is required. These digestates may contain soluble reducing agents for Cr(VI), such as fulvic acids.

9.0METHOD PERFORMANCE

9.1 A commercial laboratory analyzed soil/sediment samples containing Cr(VI) with the

results found in Table 1.

10.0REFERENCES

10.1United States Environmental Protection Agency, 1982. Test Methods for Evaluating Solid Wastes, Physical/Chemical Methods. SW-846, Second Edition. Office of Solid Waste and Emergency Response, Washington, D.C.

10.2New Jersey Department of Environmental Protection and Energy (NJDEPE). NJDEPE Modified Methods 3060/7196. 1992.

10.3Vitale, R., G. Mussoline, J. Petura, B. James, 1993. A Method Evaluation Study of an Alkaline Digestion (Modified Method 3060) Followed by Colorimetric Determination (Method 7196) for the Analysis for Hexavalent Chromium in Solid Matrices. Environmental Standards, Inc. Valley Forge, PA 19482.

10.4Zatka, V.J., 1985. Speciation of Hexavalent Chromium in Welding Fumes Interference by Air Oxidation of Chromium. J. Ray Gordon Research Laboratory, INCO Limited, Sheridan Park, Mississauga, Ontario L5K 1Z9, Am. Ind. Hyg. Assoc. J., 46(6) : 327-331.

10.5ASTM (American Society for Testing and Materials), 1981. Standard Practice for Oxidation Reduction Potential of Water. ASTM Designation:D1498-93.

10.6Vitale, R.J., Mussoline, G.R., Petura, J.C. and James, B.R. 1994. Hexavalent Chromium Extraction from Soils: Evaluation of an Alkaline Digestion Method. J. Environ. Qual. 23:1249-1256.

10.7U.S. Department of Health and Human Services - Agency for Toxic Substances and Disease Registry. Toxicological Profile for Chromium. April, 1993.

10.8Vitale, R.J., Mussoline, G.R., Petura, J.C. and James, B.R. 1995. Hexavalent Chromium Quantification in Soils: An Effective and Reliable Procedure. Am. Env. Lab., April Ed.

10.9James, B.R., Petura, J.C., Vitale, R.J., and Mussoline, G.R. 1995. Hexavalent Chromium Extraction form Soils: A Comparison of Five Methods. Environ. Sci. Technol. 29:2377-2381.

10.10U.S. Environmental Protection Agency. 1993. IRIS: A continuously updated electronic database maintained by the U.S. Environmental Protection Agency. National Library of Medicine, Bethesda, MD.

10.11ASTM (American Society for Testing and Materials), 1981. Standard Test Method for Ferrous Iron in Iron Oxides. ASTM Designation:D3872-86.

10.12ASTM (American Society for Testing and Materials), 1981. Standard Test Method for 24-h Batch-Type Measurement of Contaminant Sorption by Soil and Sediments. ASTM Designation:D4646-87.

10.13ASTM (American Society for Testing and Materials), 1981. Standard Test Method for Single Batch Extraction Method for Waters. ASTM Designation:D5233-92.

10.14ASTM (American Society for Testing and Materials), 1981. Standard Test Method for Shake Extraction of Solid Waste with Water. ASTM Designation:D3987-85.

10.15U.S. EPA Contract Laboratory Program, Statement of Work for Organic Analysis, Multimedia Multiconcentration Document, OLM03.1, 8/94 Rev.

TABLE 1

SINGLE LABORATORY METHOD EVALUATION DATA (ppm)(mg/kg)(mg/kg)Range,%Eh S Cr(VI) Conc.Spike Conc.Recovery b d 2-Sample Type (mV)pH c

Mean Native Mean Cr(VI)Matrix Spike COPR /Soil 5507.4<10.0

4.142.089.8-116a Blends Loam 620 6.4<10.0

ND 62.565.0-70.3Clay 840 3.0<10.0

ND 63.137.8-71.1COPR 4607.4<10.0

75981385.5-94.8a Anoxic -1897.225.0

ND 3810Sediment Quartz Sand 710 5.3

<10.0ND 9.875.5-86.3Source: Reference 10.3

Notes:

ND

-Not detected a

-COPR - chromite ore processing residue b

-Corrected for the reference electrode, laboratory field moist measurement c

-Field measurement d -Laboratory field moist measurement

QUALITY CONTROL FLOW CHART

QUALITY CONTROL FLOW CHART (Continued)

Eh/pH PHASE DIAGRAM

METHOD 3060A

ALKALINE DIGESTION FOR HEXAVALENT CHROMIUM

大一上期C语言实验报告5 循环控制语句

成都工业学院·计算机工程学院 《程序设计基础》实验报告 1.实验目的 (1)熟练掌握while语句、do…while语句和for语句格式及使用方法,掌握三种循环控制语句的循环过程以及循环结构的嵌套,利用三 种循环语句实现循环结构; (2)掌握简单、常用的算法,并在编程过程中体验各种算法的编程技巧; (3)进一步学习调试程序,掌握语法错误和逻辑错误的检查方法。2.实验内容 (1)输出两个整数m和n,求它们的最大公约数和最小公倍数。 要求: ①画出算法流程图,从键盘输入m和n; ②对负数和零可不做考虑; ③运行程序,对m>n、m

③按照数字、大写字母、小写字母及其他字符数的顺序输出结果 3.流程图 4.源程序

5. 运行结果 (1 ) 求最大公约数和最小公倍数 (2)求1000内最大的10个素数之和(3)计算π值

C语言for循环语句教案

for循环结构程序设计教案 课程名称:C语言程序设计 本课内容:循环结构程序设计——for 语句 一、教学目标 1、领会程序设计中构成循环的方法 2 、掌握for 语句的用法 二、教学重点 1、for 语句的一般格式 2、for语句的执行过程 三、教学难点 for 语句的综合利用 四、教学方法 1、课堂讲授,给出主要内容。 2、讲解其基本格式。 3、应用示例,结合相应的知识讲解。 4、执行过程用流程图和例题用(演示法和讲解法)进行详细说明。 五、教学过程 (一)导入 1、复习前两节课我们学习的两种循环语句——while语句和do~while 语句的基本格式和执行过程和特征。 2、给出例子如下:

main( ) {int x=1; (表达式1) s=0; while(x<=100) (表达式2) {s=s+x; x=x+1; (表达式3) } printf(“%d”,s); } 分析用while语句来完成的程序,主要完成1到100的累加和,对一个循环程序来说最关键的三个部分:循环变量的赋初值、控制循环条件、循环控制变量的更新。 (二)教学过程 1、写出本节课要介绍的for语句的一般格式 for(表达式1;表达式2;表达式3) 循环体; 2、掌握:基本格式和各个表达式的功能和特征 强调:for语句中的所有表达式和while语句中的表达式所完成的功能是相同的。 表达式1:循环变量的初始化(初始值) 表达式2:循环条件(终止值) 表达式3:循环变量自增 3、for语句的执行过程 for ( int i = 0 ; i < 10 ; i++) { printf("我最棒"); }

c语言循环语句和循环控制例题解析

一、循环控制 (一)、break语句 break语句通常用在循环语句和开关语句中。当break用于开关语句switch中时,可使程序跳出switch而执行switch以后的语句;如果没有break语句,则将成为一个死循环而无法退出。break在switch中的用法已在前面介绍开关语句时的例子中碰到,这里不再举例。 当break语句用于do-while、for、while循环语句中时,可使程序终止循环而执行循环后面的语句,通常break语句总是与if语句联在一起。即满足条件时便跳出循环。 例如: int main(int argc, char *argv[]) { int sn=0,i; for(i=1;i<=100;i++) { if(i==51) break; /*如果i等于51,则跳出循环*/ sn+=i; /*1+2+……+50*/ } printf(%d\n,sn); } 可以看出,最终的结果是1+2+……+50。因为在i等于51的时候,就跳出循环了。自己写写怎样在while和do--while循环中增加break语句。 注意: 1. break语句对if-else的条件语句不起作用。 2. 在多层循环中,一个break语句只向外跳一层。 例如: int main(int argc, char *argv[]) { int i,j; printf(i j\n); for(i=0;i<2;i++) for(j=0;j<3;j++) { if(j==2) break; printf(%d %d\n,i,j); } } 输出结果为: i j 0 0 0 1 1 0 1 1 当i==0,j==2时,执行break语句,跳出到外层的循环,i变为1。 (二)、continue语句

C语言 个关键字九种控制语句 种运算符

总结归纳了C语言的32个关键字 第一个关键字:auto 用来声明自动变量。可以显式的声明变量为自动变量。只要不是声明在所有函数之前的变量,即使没加auto关键字,也默认为自动变量。并且只在声明它的函数内有效。而且当使用完毕后,它的值会自动还原为最初所赋的值。自动变量使用时要先赋值,因为其中包含的是未知的值。 例:auto int name=1; 第二个关键字:static 用来声明静态变量。可以显式的声明变量为静态变量。也为局部变量。只在声明它的函数内有效。它的生命周期从程序开始起一直到程序结束。而且即使使用完毕后,它的值仍旧不还原。即使没有给静态变量赋值,它也会自动初始化为0. 例:static int name=1. 第三个关键字:extern 用来声明全局变量。同时声明在main函数之前的变量也叫全局变量。它可以在程序的任何地方使用。程序运行期间它是一直存在的。全局变量也会初始化为0. 例:extern int name; 第四个关键字:register 用来声明为寄存器变量。也为局部变量,只在声明它的函数内有效。它是保存在寄存器之中的。速度要快很多。对于需要频繁使用的变量使用它来声明会提高程序运行速度。 例:register int name=1; 第五个关键字:int 用来声明变量的类型。int为整型。注意在16位和32位系统中它的范围是不同的。16位中占用2个字节。32位中占用4个字节。还可以显式的声明为无符号或有符号: unsigned int或signed int .有符号和无符号的区别就是把符号位也当作数字位来存储。也可用short和long来声明为短整型,或长整行。 例:int num; 第六个关键字:float 用来声明变量的类型。float为浮点型,也叫实型。它的范围固定为4个字节。其中6位为小数位。其他为整数位。 例:float name;

C语言循环程序设计for语句教学案例

《C语言循环程序设计—for语句》教学案例漠河县职业技术学校尘威威

《C语言循环程序设计—for语句》教学案例 漠河县职业技术学校尘威威 C语言基础是中职计算机专业的一门必修课,也是要求计算机专业学生学习、掌握的一门重点课程,这门课程核心内容就是要让学生掌握一门编程的语言,学会编写简单的程序,能读懂C语言源程序。 案例背景: 在计算机应用专业教学中,C语言是一门理论与实践结合得比较紧的课程。要掌握和使用好这门语言,既要求学生有比较扎实的理论基础,又要具备较强的应用实践能力。如果只是按照传统的知识体系照本宣科,让学生理解这些枯燥的概念都难,更不要说达到良好的教学效果,而且易挫伤学生学习编程的积极性。因此,在教学中可以改为从案例入手,通过给学生演示、让学生模仿,在实际应用中去探究和领悟这些概念,并适时地加以归纳总结和进行概念的延伸,让学生在轻松愉快的气氛中学习新知识。所以从课程内容而言,案例教学是适用的,是切合学生的。 循环结构是程序设计三种基本结构的重中之重,而循环中的for 循环是程序中运用最多的,也是较灵活的语句之一,它既是前面知识的延续,又是后面知识的基础,在知识构架中起着重要的衔接作用,如果不采用一些恰当有效的方法,学生在学习过程中会难以掌握。在教学过程中教师应结合一些有趣的程序,提高学生的学习兴趣,引导

学生全身心地投入课堂。本文针对学生的实际情况,具体阐述for循环语句在具体编程时的灵活应用。 教学目标确定 (一)知识与技能 1、领会程序设计中构成循环的方法 2、能使用for循环语句编写C语言语句,并能运用for循环语句编写出正确的程序。 (二)过程与方法 C语言程序设计中for循环语句教学以行动导向教学为主线,通过“提出问题―分析问题―解决问题―问题扩展―讨论―总结归纳―实践”的程序,过渡到知识应用和练习。 本课采用多媒体课件进行教学,通过课件把文字和图片有机的结合,使学生在学习过程中更加容易理解,学习效率高。在课堂讨论和实践过程中,教师适当引导,学生主动探究、归纳总结学习内容,既有利于领会掌握新知识点,又能充分发挥学生的主体作用。在重点的突破上,采用范例比较教学法,给出具体的案例,让学生通过典型的例子掌握知识,同时通过用while、do while语句的所编写的程序进行比较,加深学生印象,让学生快速的掌握for循环语句的基本结构及使用方法。 (三)情感与价值观 1.让学生在自主解决问题的过程中培养成就感,为今后自主学习打下良好的基础。

C语言循环结构练习题带答案

第5章循环结构程序设计 练习题 1. 单项选择题 (1)语句while (!e);中的条件!e等价于 A 。 A. e==0 B. e!=1 C. e!=0 D. ~e (2)下面有关for循环的正确描述是 D 。 A. for循环只能用于循环次数已经确定的情况 B. for循环是先执行循环体语句,后判定表达式 C. 在for循环中,不能用break语句跳出循环体 D. for循环体语句中,可以包含多条语句,但要用花括号括起来 (3)C语言中 D 。 A. 不能使用do-while语句构成的循环 B. do-while语句构成的循环必须用break语句才能退出 C. do-while语句构成的循环,当while语句中的表达式值为非零时结束循环 D. do-while语句构成的循环,当while语句中的表达式值为零时结束循环 (4)C语言中while和do-while循环的主要区别是 A 。 A. do-while的循环体至少无条件执行一次 B. while的循环控制条件比do-while的循环控制条件严格 C. do-while允许从外部转到循环体内 D. do-while的循环体不能是复合语句 (5)以下程序段 C 。 int x=-1; do { x=x*x; } while (!x); A. 是死循环 B. 循环执行二次 C. 循环执行一次 D. 有语法错误 (6)下列语句段中不是死循环的是__C__。

第5章循环结构程序设计35 A. i=100; while (1) { i=i%100+1; if (i==20) break; } B.for (i=1;;i++) sum=sum+1; C.k=0; do { ++k; } while (k<=0); D.s=3379; while (s++%2+3%2) s++; (7)与以下程序段等价的是__A__。 while (a) { if (b) continue; c; } A. while (a) B. while (c) { if (!b) c; } { if (!b) break; c; } C. while (c) D. while (a) { if (b) c; } { if (b) break; c; } (8)以下程序的输出结果是_B___。 #include main() { int i; for (i=4;i<=10;i++) { if (i%3==0) continue; COUT<

C语言循环结构测习题带答案

精心整理 第5章循环结构程序设计 5.1基本知识点 ?while语句的使用格式和注意事项 ?do-while语句的使用格式和注意事项 ?for语句的使用格式和注意事项 ?break和continue语句在循环语句中的应用 ? ? ? ? 1. C. A.do-while的循环体至少无条件执行一次 B.while的循环控制条件比do-while的循环控制条件严格 C.do-while允许从外部转到循环体内 D.do-while的循环体不能是复合语句 (5)以下程序段C。 intx=-1; do { x=x*x; } while(!x);

A.是死循环 B.循环执行二次 C.循环执行一次 D.有语法错误 (6)下列语句段中不是死循环的是__C__。 A.i=100; while(1) { i=i%100+1; if(i==20)break; } B.for(i=1;;i++) sum=sum+1; C. C. COUT< main() { intnum=0; while(num<=2) {

num++; cout< else ++i; }while(s<15); Cout< main() { inti,j; for(i=4;i>=1;i--) {

for循环使用详解(c语言版)

for循环使用详解(c语言版) 说明:c语言的很多语法部分都和JAVA,AS等相同特别是for的用法. c语言中的for循环语句使用最为灵活,不仅可以用于循环次数已经确定的情况,而且可以用于循环次数不确定而只给出循环结束条件的情况,它完全可以代替while语句. for(表达式 1;表达式 2;表达式 3)语句 它的执行过程如下: (1)先求表达式 1. (2)求表达式2,若其值为真(值为非0),则执行for语句中指定的内嵌语句,然后执行下面第三步做若为 假(值为0),则结束循环,转到第5步. (3)求解表达式3 (4)转回上面第(2)步骤继续执行; (5)结束循环,执行for语句下面的一个语句; for(循环变量赋初值;循环条件;循环变量增值)语句 如 for(i=1;i =100;i++)sum=sum+i; 它的执行相当于 i=1; while(i =100){ sum=sum+i; i++; } 显然,用for语句更简单、方便。 说明: (1)for语句的一般形式中的”表达式1”可以省略,此时应在for语句之前给循环变量赋初值.注意省略表达式1时,其后的分号不能省略.如for(;i =100;i++){....}; (2)如果表达式2省略即不判断循环条件,循环无终止地循环下去,也就是认为表达式2始终为真. 例如:for(i=1;;i++){.....}; 相当于 i=1; while(1) {sum=sum+1; i++; } (3)表达式3也可以省略,但此时程序设计者应另外设法保证循环能正常结束.如: for(i=1;i =100;) {sum=sum+1; i++;

C语言的32个关键字和9种控制语句

C语言的32个关键字和9种控制语句 C语言的关键字共有32个,根据关键字的作用,可分其为数据类型关键字、控制语句关键字、存储类型关键字和其它关键字四类。 1 数据类型关键字(12个): (1) char :声明字符型变量或函数 (2) double :声明双精度变量或函数 (3) enum :声明枚举类型 (4) float:声明浮点型变量或函数 (5) int:声明整型变量或函数 (6) long :声明长整型变量或函数 (7) short :声明短整型变量或函数 (8) signed:声明有符号类型变量或函数 (9) struct:声明结构体变量或函数 (10) union:声明共用体(联合)数据类型 (11) unsigned:声明无符号类型变量或函数 (12) void :声明函数无返回值或无参数,声明无类型指针(基本上就这三个作用) 2控制语句关键字(12个): A循环语句 (1) for:一种循环语句(可意会不可言传) (2) do :循环语句的循环体 (3) while :循环语句的循环条件 (4) break:跳出当前循环 (5) continue:结束当前循环,开始下一轮循环 B条件语句 (1)if: 条件语句 (2)else :条件语句否定分支(与if 连用) (3)goto:无条件跳转语句 C开关语句 (1)switch :用于开关语句 (2)case:开关语句分支 (3)default:开关语句中的“其他”分支 D返回语句 return :子程序返回语句(可以带参数,也看不带参数) 3 存储类型关键字(4个) (1)auto :声明自动变量一般不使用 (2)extern:声明变量是在其他文件正声明(也可以看做是引用变量)

c语言循环控制语句

循环控制结构(又称重复结构)是程序中的另一个基本结构.在实际问题中,常常需要 进行大量的重复处理,循环结构可以使我们只写很少的语句,而让计算机反复执行,从而完成大量类同的计算. C语言提供了while语句、do...while语句和for语句实现循环结构. 3.4.1while语句 while语句是当型循环控制语句,一般形式为: while<表达式>语句; 语句部分称为循环体,当需要执行多条语句时,应使用复合语句. while语句的流程图见图3-8,其特点是先判断,后执行,若条件不成立,有可能一次也不执行. [例3-11]求n! 分析:n!=n*(n-1)*(n-2)*..2*1,0!=1.即S0=1,Sn=Sn-1*n.可以从S0开始,依次求出S1、S2、...Sn. 统一令S等于阶乘值,S的初值为0!=1;变量i为计数器,i从1变到n,每一步令S=S*i,则最终S中的值就是n!. 流程图见图3-9,程序如下:

考察图3-9中循环部分的流程图可以看出,在循环前各变量应有合适的值(s=1),另外,控制循环结束的变量(此处为i)必须在循环体中被改变,否则,循环将无限进行下去,成为死循环.

本题中,将多项式的每一项用t表示,s代表符号,在每一次循环中,只要改变s、n的值,

就可求出每一项t. 一般情况下,while型循环最适合于这种情况:知道控制循环的条件为某个逻辑表达式的值,而且该表达式的值会在循环中被改变,如同例3-12的情况一样. 3.4.2do...while语句 在C语句中,直到型循环的语句是do...while,它的一般形式为: do语句while<表达式> 其中语句通常为复合语句,称为循环体. do...while语句的流程图见图3-10,其基本特点是:先执行后判断,因此,循环体至少被执行一次. 但需要注意的是,do...while与标准的直到型循环有一个极为重要的区别,直到型循环是当条件为真时结束循环,而do...while语句恰恰相反,当条件为真时循环,一旦条件为假,立即结束循环,请注意do...while语句的这一特点. 例[3-13]计算sin(x)=x-x3/3!+x5/5!-x7/7!+... 直到最后一项的绝对值小于1e-7时为止. 分析:这道题使用递推方法来做. 让多项式的每一项与一个变量n对应,n的值依次为1,3,5,7,...,从多项式的前一项算后一项,只需将前一项乘一个因子: (-x2)/((n-1)*n) 用s表示多项式的值,用t表示每一项的值,程序如下: #include # include m a i n ( ) { double s,t,x ; int n ; printf("please input x :"); scanf("%lf",&x); t=x; n=1; s=x; do { n=n+2; t=t*(-x*x)/((float)(n)-1)/(float)(n); s=s+t;

c语言循环结构练习

2015-2016(2)循环结构练习题 一、单选题(共40题,共100分) 1. 以下正确的描述是()(2分) 语句的作用是结束整个循环的执行 B.只能在循环体内和switch语句体内使用break语句 C.在循环体内使用break语句或continue语句的作用相同 D.从多层循环嵌套中退出时,只能使用goto语句 标准答案:B 考生答案: 2. 下面的关键字中,不能够从循环体中跳出循环体外的是()(2分) 标准答案:D 考生答案: 3. 以下叙述中错误的是()(2分) A.语句标号是由合法的标识符后面加一个冒号构成 语句的作用是把程序的执行转向语句标号所在的位置 语句必须与语句标号在同一个函数内 D.结构化程序设计主张使用goto语句,使用goto语句的程序可读性强标准答案:D 考生答案: 4. 有以下程序段,while 循环执行的次数是() int k=0; while(k=1)k++; (2分) A.无限次 B.有语法错,不能执行 C.一次也不执行 D.执行1次 标准答案:A 考生答案: 5. 运行以下程序的结果为() main() { int num=0; while (num<=2) {num++; printf("%d",num); } } (2分) 标准答案:B 考生答案: 6. 下述程序的输出结果是()。 #include<> main() { int Y=100; while(Y--);

printf("y=%d",Y); (2分) =0 =1 =随机值 =-1 标准答案:D 考生答案: 7. 执行下面的程序后的输出结果为() int x,y,z; x=20,y=40,z=15; while(y>x) x+=4,y-=4; z/=2; printf("%d,%d,%d",x,y,z); (2分) ,36,30 ,8,7 ,28,7 ,28, 标准答案:C 考生答案: 8. 以下程序段的输出结果是() int x=0,y=5,z=3; while(z-->0&&++x<5) y=y-1; printf("%d,%d,%d\n",x,y,z); (2分) ,2,0 ,2,-1 ,3,-1 ,-2,-5 标准答案:B 考生答案: 9. 下述语句执行后,变量k的值是() int k=1; while(k++<10); (2分) D.此为无限循环,值不定 标准答案:B 考生答案: 10. 下面程序的运行结果是()。 main() { int c1=2, c2=0; while(!c2--) printf("%d,%d", c1--, c2); } (2分) ,-1 B.不输出任何内容 ,-1 ,0 标准答案:C 考生答案: 11. 运行以下程序后,如果从键盘上输入china#main( ) { int v1=0,v2=0; char ch ; while((ch=getchar())!='#') switch(ch) { case 'a': case 'h': default: v1++; case '0': v2++;

c语言之whlie循环语句

本来说好讲讲除了scanf和printf以外例如gets、puts,petchar、putchar等输入输出函数。但准备了半天东西发现牵扯的知识太多,并且很多东西我自己也没有弄清楚。所以啦,我就打算先讲讲程序中最常见的两种循环语句,分别是while 循环语句和for循环语句。 这个while啊,我们都学过英语都知道有“当....的时候”的意思。对,学c语言时就当这个意思就行。 这个例题也没找到什么好的,就搬来了《c程序设计语言》上的例子,如果看过来就当是复习吧。 请看题: 使用公式℃=(5/9)(℉-32),打印下列华氏温度与摄氏温度的对照表。 0 -17 20 -6 40 4 60 15 80 26 100 37 120 48 140 60 160 71 180 82 200 93

220 104 240 115 260 126 280 137 300 148 我们的答案如下 #include /*当fahr=0,20,40,...,300时,打印华氏温度与摄氏温度对照表*/ main() { int fahr,celsius; int lower,upper,step; lower=0; /*华氏温度下限*/ upper=300;/*华氏温度上限*/ step=20;/*步长*/ fahr=lower; while(fahr<=upper) { celsius=5*(fahr-32)/9; printf("%d\t%d\n",fahr,celsius); fahr=fahr+step; }

} 值得高兴的是,我们又遇到了很多没有见过的东西,总是能见到新东西总是让人感到高兴的。 先是fahr、celsius等几个没见过的单词。这个其实不用说也都知道是啥东西,也就是几个可能原来不认识的变量名,并不是函数。 接下来是/**/格式的几个句子 /*当fahr=0,20,40,...,300时,打印华氏温度与摄氏温度对照表*/ /*华氏温度下限*/ /*华氏温度上限*/ /*步长*/ 这种在/*和*/之间加东西的东西叫做注释。和它的名字一样,仅作为注释,在程序运行过程就会被编译器忽略,因为编译器只对文章正文感兴趣。 这东西存在的主要价值基本上就是帮助看你程序的人或在你检查自己程序时可以快速理解你写的这一部分是干啥用的。因此注释在每个语句的句尾都可以加,在任何可以跳格也就是可以打空格或制表符的地方也都可以加。 剩下我们可能看不懂的大概也就剩while的循环语句了:while(fahr<=upper) { celsius=5*(fahr-32)/9;

C语言三种循环语句

三种基本的循环语句: for语句、while语句和do-while语句。 一、循环语句 (一)、for循环它的一般形式为: for(<初始化>;<条件表过式>;<增量>) 语句; 初始化总是一个赋值语句,它用来给循环控制变量赋初值;条件表达式是一个关系表达式,它决定什么时候退出循环;增量定义循环控制变量每循环一次后按什么方式变化。这三个部分之间用;分开。 例如: for(i=1;i<=10;i++) 语句; 上例中先给i赋初值1,判断i是否小于等于10,若是则执行语句,之后值增加1。再重新判断,直到条件为假,即i>10时,结束循环。 注意: (1).for循环中语句可以为语句体,但要用{和}将参加循环的语句括起来。 (2).for循环中的初始化、条件表达式和增量都是选择项,即可以缺省,但;不能缺省。省略了初始化,表示不对循环

控制变量赋初值。省略了条件表达式,则不做其它处理时便成为死循环。省略了增量,则不对循环控制变量进行操作,这时可在语句体中加入修改循环控制变量的语句。 (3).for循环可以有多层嵌套。 例如: for(;;) 语句; for(i=1;;i+=2) 语句; for(j=5;;) 语句; 这些for循环语句都是正确的。 main() { int i,j; printf(i j\n); for(i=0;i<2;i++) for(j=0;j<3;j++) printf(%d %d\n,i,j); } 输出结果为: i j 0 0 0 1 0 2

1 0 1 1 1 2 用for循环求1+2+……+100的和: main() { int sn=0,i; for(i=1;i<=100;i++) sn+=i; /*1+2+……+100*/ printf(%d\n,sn); } 从程序可以看出,使用循环语句可以大大简化代码。(二)、while循环它的一般形式为: while(条件) 语句; while循环表示当条件为真时,便执行语句。直到条件为假才结束循环。并继续执行循环程序外的后续语句。 例如: #include stdio.h main() {

C语言循环练习

1以下不是死循环的语句是 C 。 A、for(i=10; ; i++ ) sum+=i; B、while (1){x++;} C、for(; (c=getchar())!=?\n?;) printf(“%c”, c); D、for(;; x+= i); 2以下程序的输出结果是 A main() { int x, i; for(i = 1; i <= 100; i++) { x = i; if( ++x % 2 == 0) if( ++x % 3 == 0 ) if( ++x % 7 == 0) printf(“%d “, x); } printf(“\n”); } A、28 70 B、39 81 C、42 84 D、26 68 3. 以下程序段的输出结果是 B int k, j, s; for(k = 2; k < 6; k++, k++) { s = 1; for(j = k; j < 6; j++) s += j; } printf(“%d\n”, s); A、15 B、10 C、24 D、9 4以下程序的输出结果是 B main() { int i, sum; for(i = 1; i < 6; i++) sum += i; printf(“%d\n” sum); } A、15 B、不确定 C、16 D、0 有以下程序 main() { int i; for(i=0; i<3; i++) switch(i)

{ case 1: printf("%d", i); case 2: printf("%d", i); default : printf("%d", i); } } 执行后输出结果是 A A、011122 B、120 C、012020 D、012 以下程序段的输出结果是 C 。 int n=10; while(n>7) { n--; Pr intf(“%d”, n ); } A、1098 B、10987 C、987 D、9876 下面程序的运行结果是 A #include main() { int y=10; do{y--;}while(--y); printf("%d\n",y--); } A、0 B、1 C、8 D、-1 以下程序段的输出结果是 C int i, j, m = 0; for(i = 1; i <= 15; i += 4) for(j = 3; j <= 19; j += 4) m++; printf(“%d\n”, m); A、15 B、12 C、20 D、25 以下程序段的输出结果是 B int x= 3; do {pritnf(“%3d”, x-=2); } while (!(--x));

C语言循环结构练习题带答案

第5章循环结构程序设计 5.1基本知识点 ?while语句的使用格式和注意事项 ?do-while语句的使用格式和注意事项 ?for语句的使用格式和注意事项 ?break和continue语句在循环语句中的应用 ?循环结构的嵌套 ?使用goto语句实现循环结构 ?穷举法程序设计方法 ?迭代程序设计方法 5.2练习题5 1.单项选择题 (1)语句while(!e);中的条件!e等价于A。 A.e==0 B.e!=1 C.e!=0 D.~e (2)下面有关for循环的正确描述是D。 A.for循环只能用于循环次数已经确定的情况 B.for循环是先执行循环体语句,后判定表达式 C.在for循环中,不能用break语句跳出循环体 D.for循环体语句中,可以包含多条语句,但要用花括号括起来(3)C语言中D。 A.不能使用do-while语句构成的循环 B.do-while语句构成的循环必须用break语句才能退出 C.do-while语句构成的循环,当while语句中的表达式值为非零时结束循环 D.do-while语句构成的循环,当while语句中的表达式值为零时结束循环 (4)C语言中while和do-while循环的主要区别是A。 A.do-while的循环体至少无条件执行一次 B.while的循环控制条件比do-while的循环控制条件严格 C.do-while允许从外部转到循环体内 D.do-while的循环体不能是复合语句

(5)以下程序段C。 intx=-1; do { x=x*x; } while(!x); A.是死循环 B.循环执行二次 C.循环执行一次 D.有语法错误(6)下列语句段中不是死循环的是__C__。 A.i=100; while(1) { i=i%100+1; if(i==20)break; } B.for(i=1;;i++) sum=sum+1; C.k=0; do { ++k; }while(k<=0); D.s=3379; while(s++%2+3%2) s++; (7)与以下程序段等价的是__A__。 while(a) { if(b)continue; c; } A.while(a) B.while(c) {if(!b)c;} {if(!b)break;c;} C.while(c) D.while(a)

C语言循环结构练习题带答案

第5章循环结构程序设计 基本知识点 while语句的使用格式和注意事项 do-while语句的使用格式和注意事项 for语句的使用格式和注意事项 break和continue语句在循环语句中的应用 循环结构的嵌套 使用goto语句实现循环结构 穷举法程序设计方法 迭代程序设计方法 练习题5 1. 单项选择题 (1)语句while (!e);中的条件!e等价于 A 。 A. e==0 B. e!=1 C. e!=0 D. ~e (2)下面有关for循环的正确描述是 D 。 A. for循环只能用于循环次数已经确定的情况 B. for循环是先执行循环体语句,后判定表达式 C. 在for循环中,不能用break语句跳出循环体 D. for循环体语句中,可以包含多条语句,但要用花括号括起来 (3)C语言中 D 。 A. 不能使用do-while语句构成的循环 B. do-while语句构成的循环必须用break语句才能退出 C. do-while语句构成的循环,当while语句中的表达式值为非零时结束循环 D. do-while语句构成的循环,当while语句中的表达式值为零时结束循环 (4)C语言中while和do-while循环的主要区别是 A 。 A. do-while的循环体至少无条件执行一次 B. while的循环控制条件比do-while的循环控制条件严格

C. do-while允许从外部转到循环体内 D. do-while的循环体不能是复合语句 (5)以下程序段 C 。 int x=-1; do { x=x*x; } while (!x); A. 是死循环 B. 循环执行二次 C. 循环执行一次 D. 有语法错误(6)下列语句段中不是死循环的是__C__。 A. i=100; while (1) { i=i%100+1; if (i==20) break; } B. for (i=1;;i++) sum=sum+1; C. k=0; do { ++k; } while (k<=0); D. s=3379; while (s++%2+3%2) s++; (7)与以下程序段等价的是__A__。 while (a) { if (b) continue; c; } A. while (a) B. while (c) { if (!b) c; } { if (!b) break; c; } C. while (c) D. while (a) { if (b) c; } { if (b) break; c; }(8)以下程序的输出结果是_B___。

c语言循环语句

Turbo C 2.0提供三种基本的循环语句: for语句、while语句和do-while语句。 一、循环语句 (一)、for循环它的一般形式为: for(<初始化>;<条件表过式>;<增量>) 语句; 初始化总是一个赋值语句,它用来给循环控制变量赋初值;条件表达式是一个关系表达式,它决定什么时候退出循环;增量定义循环控制变量每循环一次后按什么方式变化。这三个部分之间用;分开。 例如: for(i=1;i<=10;i++) 语句; 上例中先给i赋初值1,判断i是否小于等于10,若是则执行语句,之后值增加1。再重新判断,直到条件为假,即i>10时,结束循环。注意: (1).for循环中语句可以为语句体,但要用{和}将参加循环的语句括起来。 (2).for循环中的初始化、条件表达式和增量都是选择项,即可以缺省,但;不能缺省。省略了初始化,表示不对循环控制变量赋初值。省略了条件表达式,则不做其它处理时便成为死循环。省略了增量,则不对循环控制变量进行操作,这时可在语句体中加入修改循环控制变量的语句。 (3).for循环可以有多层嵌套。 例如: for(;;) 语句; for(i=1;;i+=2) 语句; for(j=5;;) 语句; 这些for循环语句都是正确的。 main() { int i,j; printf(i j\n); for(i=0;i<2;i++) for(j=0;j<3;j++) printf(%d %d\n,i,j); }

输出结果为: i j 0 0 0 1 0 2 1 0 1 1 1 2 用for循环求1+2+……+100的和: main() { int sn=0,i; for(i=1;i<=100;i++) sn+=i; /*1+2+……+100*/ printf(%d\n,sn); } 从程序可以看出,使用循环语句可以大大简化代码。 (二)、while循环它的一般形式为: while(条件) 语句; while循环表示当条件为真时,便执行语句。直到条件为假才结束循环。并继续执行循环程序外的后续语句。 例如: #include stdio.h main() { char c; c='\0'; /*初始化c*/ while(c!='\n') /*回车结束循环*/ c=getche(); /*带回显的从键盘接收字符*/ } 上例中,while循环是以检查c是否为回车符开始,因其事先被初始化为空,所以条件为真,进入循环等待键盘输入字符;一旦输入回车,则c='\n',条件为假,循环便告结束。与for循环一样,while循环总是在循环的头部检验条件,这就意味着循环可能什么也不执行就退出。

(完整版)C语言循环习题答案

循环习题集锦 一.选择题 1.for(i=0;i<10;i++);结束后,i 的值是;(10) A 9 B 10 C 11 D 12 2.下面程序的循环次数是:(D) int k=0; while(k<10) {if(k<1) continue; if(k==5) break; k++; } A. 5 B 6 C 4 D 死循环,不能确定循环次数 3.下面程序的输出结果是(10) main() { int s,k; for(s=1,k=2;k<5;k++) s+=k; printf(“%d\n”,s); } A 1 B 9 C 10 D 15

4.要使下面程序输出10 个整数,则在下画线处填入正确的数是:(c) for(i=0;i<= ;) printf(“%d\n”,i+=2); A 9 B 10 C 18 D 20 5.运行下面程序:(B) main() { int i=10,j=0; do { j=j+i; i--; }while(i>5); printf(“%d\n”,j); } 输出结果是: A 45 B 40 C 34 D 55 6.运行下面程序 #include “stdio.h” main() { int k=0,a=1; while(k<10) {

for( ; ;) { if((k%10)==0) break; else k--; } k+=11; a+=k; } printf(“%d %d\n”,k,a); } 则输出的结果是(C) A 21 32 B 21 33 C 11 12 D 10 11 7.以下叙述正确的是:(D) A.do---while 语句构成的循环不能用其他语句构成的循环来代替。 B.do---while 语句构成的循环只能用break 语句退出。 C.用do---while 语句构成的循环,在while 后的表达式为非零时结束循环。 D.用do---while 语句构成的循环,在while 后的表达式为零时结束循环。 8.有如下程序: main()

C语言循环控制练习题

循环控制练习题 1.设有程序段int k=10; while (k=0) k=k-1; 则下面描述中正确的是() A while循环执行10次 B 循环是无限循环 C 循环体语句一次也不执行 D 循环体语句执行一次 2.设有以下程序段int x=0,s=0; while(!x!=0)s+=++x;printf("%d",s) ;则() A 运行程序段后输出0 B 运行程序段后输出1 C 程序段中的控制表达式是非法的 D 程序段执行无限次 3、语句while(!E);中的表达式!E特等价于() A、E==0B、E!=1C、E!=0D、E==1 4、下面程序段的执行结果是() a=1;b=2;c=2; while(a

while(x<15) y++,x+=++y; printf("%d,%d",y,x); A、20,7 B、6,12 C、20,8 D 8,20 6、下面程序段的运行结果是() int n=0; while (n++<=2); printf("%d",n); A,2 B、3 C、4 D 有语法错误 7、设有程序段 t=0; while(printf("*")) {t++; if(t<3) break;}下面描述正确的是() A、其中循环控制表达式与0等价 B、其中循环控制表达式与’0‘等价 C 、其中循环表达式是不合法的 D、以上说法都不对 8、下面程序的功能是将从键盘输入的一对数,由小到大排序输出。当输入一对相等的数时结束循环,请选择填空。 main()

相关文档